「java导出乱码」复制的java文件乱码怎么弄
今天给各位分享java导出乱码的知识,其中也会对复制的java文件乱码怎么弄进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
JAVA输出是乱码?
编码问题,
将源文件以utf-8格式保存,然后cmd中执行下面的语句
以UTF-8编码格式进行编译
javac -encoding utf-8 Demo.java
中文输出结果
java打开excel乱码
HSSFWorkbook workbook = new HSSFWorkbook();//创建EXCEL文件
HSSFSheet sheet= workbook.createSheet(sheetName); //创建工作表
这样在用英文名作为工作表名是没问题的,但如果sheetName是中文字符,就会出现乱码,解决的方法如下代码:
HSSFSheet sheet= workbook.createSheet();
workbook.setSheetName(0, sheetName,(short)1); //这里(short)1是解决中文乱码的关键;而第一个参数是工作表的索引号。
没有太多原因,POI就是如此;再说导出的EXCEL文件名的中文乱码问题, 导出时代码如下:
.....
this.getResponse().reset();
this.getResponse().setContentType("application/msexcel");
this.getResponse().setHeader("Content-Disposition", "inline;filename=中文名.xls");
try {
em.getExcelMutliIO(this.getResponse().getOutputStream());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
这个时候导出去时,文件名会为乱码,解决的办法如下,在你的代码增加下列函数:
public static String toUtf8String (String s){
StringBuffer sb = new StringBuffer();
for (int i=0;is.length();i++){
char c = s.charAt(i);
if (c = 0 c = 255){sb.append(c);}
else{
byte[] b;
try { b = Character.toString(c).getBytes("utf-8");}
catch (Exception ex) {
System.out.println(ex);
b = new byte[0];
}
for (int j = 0; j b.length; j++) {
int k = b[j];
if (k 0) k += 256;
sb.append("%" + Integer.toHexString(k).toUpperCase());
}
}
}
return sb.toString();
}
然后在导出时,对文件名引用该函数,代码如下:
this.getResponse().setHeader("Content-Disposition", "inline;filename=" +toUtf8String("中文文件名.xls"));
java poi导出excel乱码
在不同的系统下字符集的编码有可能不一样,windows系统中从程序到底层是从unicode编码进行转换,unix系统下就不一定是从unicode编码开始转换的,支不支持unicode编码我也不知道,我估计就是系统的字符集编码不同的问题
java 导出 Excel 中文乱码
HSSFCell csCell = row.createCell((short) 1);
csCell.setEncoding(HSSFCell.ENCODING_UTF_16);// 设置cell编码解决中文高位字节截断
csCell.setCellValue("中文测试");// 设置中文
JAVA 输出是乱码 怎么解决???
你用的是记事本编辑的吗?用记事本打开你的文件,然后另存为,在另存为对话框最下方把编码改成“UTF-8”,然后再编译运行
java导出乱码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于复制的java文件乱码怎么弄、java导出乱码的信息别忘了在本站进行查找喔。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。