说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

同样的class文件生成出来的文件win下显示正常,而在linux下出现乱码

编辑:说三道四文库 发布时间:2018-05-26 10:02
HTML文档下载 WORD文档下载 PDF文档下载
执行一个class文件在win下生成jsp文件,文件打开一看,中文正常显示,而把class文件拷贝到linux上再执行得到的jsp文件显示乱码(中文),我只有一百分可以相送,给位高手请帮帮忙。
谢谢了。

其他上载上去的jsp文件,中文显示正常。
以下是部分代码。
        VelocityContext context = new VelocityContext();
        Template template = Velocity.getTemplate("iptemp.txt", "gb2312");

        int countInt = adao.getMlAdownerCount() ;
//        countInt = 16;

        List adownerlist = adao.listMlAdowner(1, countInt);

            for (Iterator iter = campaignlist.iterator(); iter.hasNext(); ) {
                MlCampaign mlCampaign = (MlCampaign) iter.next();
                
                List mlAdList = addao.listMlAd(mlCampaign, 1, 20);
                ArrayList adList = new ArrayList();
                for (Iterator iter2 = mlAdList.iterator(); iter2.hasNext(); ) {
                    MlAd mlAd 
            context.put("adOwnerName", adownerNameString);
            context.put("campaignMap", campaignMap);
            context.put("counts", getCountFromCampaign(campaignMap));
            StringWriter writer = new StringWriter();
            template.merge(context, writer);
            
   FileOutputStream fos = new FileOutputStream(htmlFilePath + mlAdowner.getAdOwnerId() + "_IP.jsp");

            Writer out = new OutputStreamWriter(fos, "gb2312");
   out.write(new String(writer.toString().getBytes("gb2312")));
   out.close();
最直接的方法是把中文编码转换成unicode编码,就没有这些问题。
楼上可否说的再具体一点?
helphelphelp
gb2312
的地方都换成
UTF-8
试试
谢谢,我这就试。
是的UTF-8应该可用.
不行,win下都会变成乱码。
各位高手不吝赐教。
http://dev.csdn.net/article/27/27140.shtm
http://dev.csdn.net/article/27/27142.shtm
这个应该对你有帮助
谢谢你,继续试
我用java 文件名 -encoding GBK解决了大部分问题,可是从数据库里出来的还是以问号的形式存储到文件里,怎么回事呀?这个问题解决,立马结分。
数据库连接串指定的是什么编 码?

如果是oracle的话 数据库所在机器的NLS_language 是什么

如果是 AL32UTF8的话就要在开始的时候就转码.
是mysql,大虾
try {
            fieldname = (fieldname == null) ?
                  fieldname :
                  new String (fieldname.getBytes ("ISO8859_1") ,
                              "GBK");
        }
        catch (UnsupportedEncodingException ex) {
            fieldname = fieldname;
        }
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘