❶ c#的IO流怎麼讀GB2312編碼或其他編碼的文本文件
首先給你解釋原因
記事本的默認編碼格式是ANSI,所以你用UTF8讀取記事本文件的中文會亂碼,
解決方法有兩種:
一是用StreamRead去讀,new的時候傳出兩個參數,第一個是路徑
第二個是編碼格式,你可以指定為枚舉類型中的默認編碼格式
StreamReader
sr=
new
StreamReader(filename,Encoding.Default);
二是先指定編碼格式,然後用指定的編碼格式去讀取.
代碼:
private
static
StringBuilder
readFile(string
filename)//讀文件
{
StringBuilder
sb
=
new
StringBuilder();
System.Text.Encoding
encode
=
System.Text.Encoding.GetEncoding("GB2312");
FileStream
fs
=
null;
try
{
fs
=
File.OpenRead(@filename);
}
catch
{
return
null;
}
byte[]
arr
=
new
byte[5000];
//
UTF8Encoding
data
=
new
UTF8Encoding();
try
{
while
(fs.Read(arr,
0,
arr.Length)
>
0)
{
sb.Append(encode.GetString(arr));
}
return
sb;
}
catch
{
return
null;
}
finally
{
fs.Close();
}
}
❷ java的IO流亂碼問題
你將eclipse的編碼集也改成UTF-8試試
❸ java io流怎樣讀取 excel 表格,我這個讀取出來是亂碼呢
直接使用IO讀,是讀不到的,那是有格式的文件,,,,使用 POI 去讀
~~~~~~~~~~~
~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~
❹ JAVA怎麼讀取DOC文件
Java不能直接讀取word文檔抄。word文檔不是文本文件而是二進制數據,所以你讀出來的都是亂碼。
Apache提供了一個組件POI,可以讀取Word和Excel文檔。
參考下面的網址吧,或者用網路搜索一下,POI使用方法的說明很多。
http://poi.apache.org/
❺ 用java的IO流怎麼把文件中的小數讀出來,文字都可以讀出來,就是小數就是亂碼了
不應該是小數的問題 可能是編碼的問題 你用的什麼編碼讀取的? 文件是什麼編碼?
❻ 為什麼java 用IO流讀docx文件里的內容列印在控制台是亂碼
肯定是亂碼啊...那是因為docx 裡面的東西其實進行過某些格式整合到一起的文件 你可以把一個word文件的後綴改成zip 解壓縮打開看一下就知道...
java讀取docx裡面的東西 可以使用 poi ,具體怎麼做可以在網上搜一下
❼ jsP用IO流讀取文件時出現亂碼...
亂碼問題出現的原因是這樣的,
文件字元本身有一個編碼專,BufferedReader又用一個編碼讀,jsp頁面顯示的時候還有一屬個編碼。
你jsp頁面的顯示編碼是UTF-8,
所以你BufferedReader讀進來的就要是UTF-8編碼。
所以,如果BufferedReader的編碼,和文件的編碼不一致,或者文件的編碼不是UTF-8編碼,那麼你就要轉化成UTF-8編碼。
可以採用如下方法:
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("e:/read.txt"),"GBK"));
❽ 在Java的io流中為什麼我向TXT文件輸出整形數據,結果出現亂碼
因為每一種文件都有它自己的編碼方式,window默認是GBK編碼會出現亂 用一下轉換流例如:
轉換流在構造時可以制定其編碼集合,例如:
InputStream isr = new InputStreamReader
(System.in, 「GBK」)
改下編碼方式。
❾ java問題,被IO流中文亂碼搞暈了
你讀取用utf-8,那如果你txt文本是用其它的編碼方式肯定會出現亂碼
你位元組流一次讀取一行,這樣轉化就不會出現一個字元的兩個位元組被分開讀取並輸出的狀況,不會出現亂碼
utf-8 是可變長編碼,如果你程序選擇的編碼方式是定長編碼方式,讀取字元時肯定是會出現亂碼
❿ java實現文件上傳與下載,如果上傳的是txt格式,資料庫中的數據不亂碼,word/fdf都亂碼,怎麼回事
首先你要確定向資料庫添加的數據不是亂碼的