⑴ 您好,請問我用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查看時採用統一的編碼格式。
排除編碼格式問題,查看數據源即特殊問題來源的字元編碼格式,如果有必要需要轉碼改變成需要的編碼格式