Ⅰ java輸出是亂碼
也可以將windows系統編碼設置成utf-8試一試,或者使用開發軟體來進行編寫,開發軟體一般會將此類問題給處理掉
Ⅱ JAVA 輸出是亂碼 怎麼解決
右鍵單擊cmd的窗口欄,點擊默認值,可以設置編碼格式,默認是GBK
用記事本打開.java文件,版
選擇 格式>>字體權>>腳本>>
有西歐和GB2312
西歐代表ISO-8859-1
GBK兼容GB2312
文件另存為的時候,也可以設置編碼格式。
我想你應該懂怎麼做了吧
Ⅲ java 導出 Excel 中文亂碼
HSSFCellcsCell=row.createCell((short)1);
csCell.setEncoding(HSSFCell.ENCODING_UTF_16);//設置襲cell編碼解決中文高位位元組截斷
csCell.setCellValue("中文測試");//設置中文
Ⅳ java控制台輸出亂碼
產生原因:因為這個開源項目的默認字元編碼不對,所以控制台的字回符編碼也自動變成了UTF-8,而鍵盤的答輸入流的默認格式是GBK格式,這樣就造成了在GBK轉UTF-8的過程中產生的奇數亂碼錯誤(這個問題的解釋可以在搜索引擎找到)。
解決辦法:
1.在代碼區域右鍵 -> run as -> run configurations -> common(右側) -> console encoding
出現此錯誤,此時的編碼格式應該是UTF-8,選擇Other,這時可能沒有GBK選項,沒有,則執行之後操作。
2.更改該項目的文本文件編碼,項目右鍵 -> properties -> resource -> 先將 text file encoding調整回GBK,然後再回去重新設置console encoding編碼為GBK。
Ⅳ java生成文件名亂碼怎麼解決
輸出抄excel:
response.setHeader("Content-disposition","attachment;filename*=utf-8'zh_cn'"
+URLEncoder.encode('文件名襲',"UTF-8")+".xls");//設定輸出文件頭
response.setContentType("application/ms-excel");//定義輸出類型
Ⅵ java生成 csv excel 亂碼怎麼辦
准備一個有亂碼的CSV文件用於演示,如圖。
首先我們右鍵此CSV文件,選擇「用記事本打開」
打開後,點擊「文件」--「另存為」。
我們發現默認編碼是「UTF-8」,所以一些Excel表格軟體就會顯示亂碼。對於這樣,我們只要改成ANSI就行了,按確定。
5
用Excel表格軟體再打開,就不會顯示亂碼了。
Ⅶ Java導出問題:查詢條件為中文的變成了亂碼,結果導不出數據 求解決方法,
1.如果是通過js向java後台傳輸漢字時
可使用encodeURI、encodeURIComponent 方法對漢字進行加碼
java中使用
URLDecode.decode()進行解碼,
註:
①加碼的時候要加2次,如encodeURI(encodeURI(value))
②加碼後自動變成UTF-8的編碼
2.java後台向前台傳輸,保持編碼一致,一般不會亂碼!
good luck!~
Ⅷ 在java手機里存的文檔txt,傳到電腦里打開是亂碼求助怎麼解決,救救孩子
應該是編碼問題,試試用文冊笑本的編輯設置文件編碼為世陵utf-8或gbk等,切換不同的編碼看看是否正常展示。州返含
Ⅸ Java程序輸出txt文件內容時中文亂碼怎麼解決
既然散埋租沖兆是輸出的不是二液清進制文件,為什麼不用FileWriter+BufferedWriter呢,這樣就不會有亂碼了
Ⅹ 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;i<s.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"));