❶ 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都乱码,怎么回事
首先你要确定向数据库添加的数据不是乱码的