乱码问题解决方案

5 篇文章 0 订阅

一、上传文件到aix系统:

文件名:String encoding = System.getProperty("file.encoding");
  name=new String(name.getBytes("GBK"),encoding);

 

内容:

Workbook book=Workbook.getWorkbook(new File(filename));
    Sheet sheet=book.getSheet(0); 
             int rnum = sheet.getRows();  
             int cnum =sheet.getColumns();

File f = new File(targetFilename);

      OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"gbk");
       BufferedWriter writer=new BufferedWriter(write);  
             for(int i=0;i<rnum;i++)
               {    String a1="";        
                   for(int j=0;j<=5;j++)
                   {
                    Cell cell1=sheet.getCell(j,i);
                     a1+=cell1.getContents()+",";
                   
                   }
                 
                   a1=a1.substring(0, a1.length()-1)+"/r/n";
                  
                  
                   writer.write(a1);
                 
               } 
            
             writer.close();

 

二、取文件名

String encoding = System.getProperty("file.encoding");

filename=new String(filename.getBytes(encoding),"GBK");

三、alertName=request.getParameter("。。。");的乱码问题

 String encoding = System.getProperty("file.encoding");
 String chinaName=new String(alertName.getBytes("ISO-8859-1"),encoding);

当然这里是为了从aix上通过路径和文件名获取文件流,而aix上是不支持中文的,所以这里用System.getProperty("file.encoding");
如果是window就用 String chinaName=new String(alertName.getBytes("ISO-8859-1"),"gbk");就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值