導航:首頁 > 文件類型 > java讀取文件名亂碼

java讀取文件名亂碼

發布時間:2023-03-26 09:10:25

java,為什麼讀取文本文件裡面的漢字是亂碼啊,怎麼改啊

漢字的
字元集
不匹配,比如說用UTF-8字舉陪符集去解析GBK字元集的漢字就會變成
亂碼
這里不要用FileReader,這個類用的含答橘是默認字元集去讀取文本,改用InputStreamReader,它的
構造方法
中能夠指定字元集,讓它談團作為BufferedReader的源,就不會亂碼了
hcl=new
BufferedReader(new
InputStreamReader(new
FileInputStream
(wjlj
),
"GBK"));
如果還是亂碼,就把GBK改成UTF-8

⑵ Java讀取linux系統中文文件名時候亂碼,並顯示文件不存在

我記得抄InputStreamReader和OutputStreamWriter不是可以設置編碼的嗎?
方式應該是:OutputStreamWriter writer = new OutputStreamWriter(fop, "UTF-8");
InputStreamReader reader = new InputStreamReader(fip, "UTF-8");
這樣還亂碼?那就二進制讀取就行了。
記得保證整個編譯環境編碼統一。

⑶ Java讀取linux文件名時候亂碼

要不文件名中含有中文字元,可以試試gb2312編碼

⑷ java讀取linux下文件名亂碼

Linux下讀復取文件名亂碼可能的原制因是:
1.linux系統默認編碼不支持中文字元

2.文件名本身是亂碼

解決方案是在讀取文件名的時候,要進行顯式的編碼轉換如下:

FileInputStreamfis=newFileInputStream("fileName");
InputStreamReaderisr=newInputStreamReader(fis,"utf-8");

⑸ 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));

都不行。

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

⑹ java程序讀取properties配置文件出現中文亂碼

你的properties文件編譯過了嗎?凡是有非西歐的字元都應該事先編譯的,具體方法如下:
比如你有一個1.properties文件(含有非西歐字元),你可以在cmd窗口中切換到1.properties文件所在目錄,然後輸入native2ascii -reverse -encoding gb2312 1.properties ActionName_zh_CN.properties

1.properties為轉換之前的文件名 ActionName_zh_CN.properties為轉換之後的文件名,其中-encoding後面的gb2312是可以變的如 utf-8等

⑺ java程序讀取properties配置文件出現中文亂碼

你的properties文件編譯過抄了嗎?凡是有非西歐的字元都應該事先編譯的,具體方法如下:
比如你有一個1.properties文件(含有非西歐字元),你可以在cmd窗口中切換到1.properties文件所在目錄,然後輸入native2ascii
-reverse
-encoding
gb2312
1.properties
ActionName_zh_CN.properties
1.properties為轉換之前的文件名
ActionName_zh_CN.properties為轉換之後的文件名,其中-encoding後面的gb2312是可以變的如
utf-8等

⑻ java讀寫文件,在伺服器顯示亂碼問題

寫入文件的抄時候設置下編襲碼格式即可,之後讀取就不會是亂碼的。
可以通過「FileOutputStream」創建文件實例,之後過「OutputStreamWriter」流的形式進行存儲,舉例:
OutputStreamWriter pw = null;//定義一個流
pw = new OutputStreamWriter(new FileOutputStream(「D:/test.txt」),"UTF-8");//確認流的輸出文件和編碼格式,此過程創建了「test.txt」實例
pw.write("我是要寫入到記事本文件的內容");//將要寫入文件的內容,可以多次write
pw.close();//關閉流
備註:文件流用完之後必須及時通過close方法關閉,否則會一直處於打開狀態,直至程序停止,增加系統負擔。

⑼ java文件名亂碼

修改一下文件的編碼格式,utf-8。
右擊亂碼文件,選擇propertise,在Text file encoding 處修改編碼格式。

⑽ 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讀取文件名亂碼相關的資料

熱點內容
linuxfile文件 瀏覽:454
如何用網路打普通電話 瀏覽:463
linux進程打開的文件 瀏覽:134
新購u盤無法儲存文件 瀏覽:553
5s要不要升級ios93 瀏覽:926
小米手機助手怎麼關閉自動升級 瀏覽:24
外星人能不能升級到win10系統盤 瀏覽:652
加入java信任站點 瀏覽:486
好用的急救知識app 瀏覽:524
什麼是網路適配器驅動文件名 瀏覽:717
吉林文件箱多少錢 瀏覽:113
ae模板版本 瀏覽:204
手機qq步數功能在哪裡 瀏覽:721
c程序設計04737 瀏覽:403
女孩什麼年齡學編程 瀏覽:976
安慶如何做網路營銷推廣 瀏覽:620
什麼是數據標准化 瀏覽:708
aecc三維功能實例視頻教程 瀏覽:719
iphone6s靜音鍵用法 瀏覽:560
油卡盒子APP是什麼公司名下的 瀏覽:597

友情鏈接