⑴ 您好,请问我用java word分词器对文件分词,出来的结果是乱码,应该如何解决呐
importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassDanci{publicstaticvoidmain(String[]args){Stringstr=newString();System.out.print("请输入一个英文句子:");try{BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));//获取键盘输入str=br.readLine();}catch(IOExceptione){e.printStackTrace();}String[]s=str.split("");//转换成数组System.out.println("你输入的句子共有单词"+s.length+"个");//s.length获取数组长度}}//此程序只能获取一句话的单词个数.
⑵ java用apache的ZipEntry压缩文件名为中文的word文件时,文件名乱码
对于输出zip文件的ZipOutputStream对象设置一下编码:
ZipOutputStreamout=newZipOutputStream(newFileOutputStream(
zipFileName));
//设置filenames的编码
out.setEncoding("UTF-8");
通常linux下使用utf8进行文件命名编码,而windows下采用gbk,根据你的系统情况而定
可参考下api:
http://www.jajakarta.org/ant/ant-1.6.1/docs/ja/manual/api/org/apache/tools/zip/ZipOutputStream.html
⑶ 关于java写特殊文体(如法文)到word文件中出现乱码,您有好的方法解决吗
确定采用统一的编码格式 例如UTF-8或其他
word中出现乱码未必是java端出现了问题,可能是因为你操作系统是GBK或其他编码系统打开word后无法解析,首先要保证java运行的编码格式与word查看时采用统一的编码格式。
排除编码格式问题,查看数据源即特殊问题来源的字符编码格式,如果有必要需要转码改变成需要的编码格式