導航:首頁 > 文件教程 > java讀取csv文件亂碼

java讀取csv文件亂碼

發布時間:2023-07-07 11:59:55

『壹』 java用BufferedReader讀取文件中時總是亂碼

@Test
publicvoidFileInput()throwsIOException{
Filef=newFile("io.txt");
FileInputStreamfip=newFileInputStream(f);
//構建InputStreamReader對象,編碼與寫入相同
InputStreamReaderreader=newInputStreamReader(fip,"UTF-8");
StringBufferstringBuffer=newStringBuffer();
while(reader.ready()){
//轉成內char加到StringBuffer對象中容
stringBuffer.append((char)reader.read());
}
System.out.println(stringBuffer.toString());
reader.close();
fip.close();
}

『貳』 JAVA讀寫文件,如何避免中文亂碼

最近在做HTML靜態生成,需要從硬碟上把模版文件的內容讀出來。然後,替換相關標簽寫到指定的文件中。無論是讀寫,都遇到了中文亂碼問題。試過多種方法,發現下面一種可以避免中文亂碼。(無論讀取還是寫入一定要進行編碼轉換。)

1、JAVA讀取文件,避免中文亂碼。

/**
* 讀取文件內容
*
* @param filePathAndName
* String 如 c:\\1.txt 絕對路徑
* @return boolean
*/
public static String readFile(String filePathAndName) {
String fileContent = "";
try {
File f = new File(filePathAndName);
if(f.isFile()&&f.exists()){
InputStreamReader read = new InputStreamReader(new FileInputStream(f),"UTF-8");
BufferedReader reader=new BufferedReader(read);
String line;
while ((line = reader.readLine()) != null) {
fileContent += line;
}
read.close();
}
} catch (Exception e) {
System.out.println("讀取文件內容操作出錯");
e.printStackTrace();
}
return fileContent;
}

2、JAVA寫入文件,避免中文亂碼。

public static void writeFile(String filePathAndName, String fileContent) {
try {
File f = new File(filePathAndName);
if (!f.exists()) {
f.createNewFile();
}
OutputStreamWriter write = new OutputStreamWriter(new FileOutputStream(f),"UTF-8");
BufferedWriter writer=new BufferedWriter(write);
//PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName)));
//PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName));
writer.write(fileContent);
writer.close();
} catch (Exception e) {
System.out.println("寫文件內容操作出錯");
e.printStackTrace();
}
}

我試過寫入的時候用

1、PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filePathAndName)));

2、PrintWriter writer = new PrintWriter(new FileWriter(filePathAndName));

都不行。

以上代碼經過運行可以避免中文亂碼,關鍵是要編碼轉換。

『叄』 csv 文件打開亂碼,有哪些方法可以解決

新建一個空文件,然後菜單里選 文件->導入,選擇csv文件,然後選擇編碼UTF-8 或 GB18030(一般中文都是這兩種格式,如果不行就再試試其他選項),這時界面上會預覽導入內容

『肆』 java 用FileInputStream中read方法讀取文件出現亂碼

read方法讀取復的是位元組流(制每次讀取一個位元組),如果是中文,就是兩個位元組,就會出現亂碼的。
可以通過BufferedReader 流的形式進行流緩存,之後通過readLine方法獲取到緩存的內容。
BufferedReader bre = null;
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此時獲取到的bre就是整個文件的緩存流
while ((str = bre.readLine())!= null) // 判斷最後一行不存在,為空結束循環
{
System.out.println(str);//原樣輸出讀到的內容
};
備註: 流用完之後必須close掉,如上面的就應該是:bre.close(),否則bre流會一直存在,直到程序運行結束。

『伍』 java導出 ,CSV格式文件,中文顯示成問號,怎麼解決

要加上UTF-8 BOM頭,不然在windows下打開會亂碼.

『陸』 java讀取csv文件出現亂碼怎麼辦

這種文件說白了就是 數據用,分隔符隔開。
出現亂碼估計是你文檔字元格式的問題。你轉成utf-8就不會出錯了。

『柒』 java生成 csv excel 亂碼怎麼辦

准備一個有亂碼的CSV文件用於演示,如圖。

首先我們右鍵此CSV文件,選擇「用記事本打開」

打開後,點擊「文件」--「另存為」。

我們發現默認編碼是「UTF-8」,所以一些Excel表格軟體就會顯示亂碼。對於這樣,我們只要改成ANSI就行了,按確定。

5
用Excel表格軟體再打開,就不會顯示亂碼了。

『捌』 java讀取文件亂碼

那是你選中的文件內容字元編碼與jvm預設的文件編碼不一致,如unix下jvm預設文件編碼一般為iso8859-1,而回你的文件內容可能使用了GBK,可使用如下答代碼:
FileInputStream fis = new FileInputStream(Abs);
InputStreamReader isr = new InputStreamReader(fis, "GBK"); //GBK替換成你文件內容使用的編碼
BufferedReader br = new BufferedReader(isr);

閱讀全文

與java讀取csv文件亂碼相關的資料

熱點內容
除了編程還有什麼技術 瀏覽:64
為什麼程序員討厭中文編程 瀏覽:338
數控車床編程g40是什麼意思 瀏覽:782
人們花錢為什麼逐漸網路化 瀏覽:272
如何用編程辦理電信業務 瀏覽:189
數控磨床小圓弧怎麼編程 瀏覽:390
桐鄉編程貓在哪裡 瀏覽:69
同一文件夾存儲大量文件 瀏覽:126
chrome修改js 瀏覽:842
用pad怎麼發word文件怎麼打開 瀏覽:465
哪個網站有幼 瀏覽:299
航班APP哪個最好 瀏覽:590
網路原創如何增強教育活力 瀏覽:527
蘋果第三方打開文件 瀏覽:310
蘋果電腦桌面移除的文件夾怎麼恢復 瀏覽:292
在文件名前添加字元 瀏覽:424
javaexcel導出控制項 瀏覽:484
怎麼樣粉碎文件 瀏覽:798
谷歌網站怎麼更新 瀏覽:934
svn命令行刪除文件夾 瀏覽:277

友情鏈接