FileReader 对象晌含允许Web应用程握御序异步读取存储在用户计算机上的文件宴皮笑(或原始数据缓冲区)的内容,使用 File 或 Blob 对象指定要读取的文件或数据。
index.html 如下
demo.txt 如下
你好,问题出在FileReader读取文件的过嫌坦碰程中,信闭FileReader继承了InputStreamReader,但并没有实现父类中带字符集参数的构造函芹谈数,所以FileReader只能按系统默认的字符集来解码,然后在UTF-8->
GBK
->
UTF-8的过程中编码出现损失,造成结果不能还原最初的字符。
原因明确了,这个问题解决起来并不困难,用InputStreamReader代替FileReader,InputStreamReader
isr=new
InputStreamReader(new
FileInputStream(fileName),"UTF-8")这样读取文件就会直接用UTF-8解码,不用再做编码转换。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)