日期:2014-05-18  浏览次数:20583 次

把一个非文本文件读成字符串,有哪些后果?
把一个文件读成字符串有非常多的好处,但是像doc、gif
这类文件读成字符串会有意想不到的后果,其中涉及编码
问题。当然有人说数据流的   readline   方法会少像 "\n "
这类换行符,但问题本质不在这里!而且用.getbytes()  
方法解决不了!即使用各种编码手段。所以我的问题是:

为什么读取非文本文件不正常工作,甚至少字符,到底
破坏了哪些字符??

------解决方案--------------------
34783138欢迎加入
------解决方案--------------------
每一种文件都有自己的格式,一种工具打开一种它不能打开的文件打不开或打开也是乱码是因为它不识别这种格式。
你把非文本文件强行转化为文本格式(字符串就是纯文件格式),当然会乱码了,既然乱码了少字符和多几个字符那是肯定的问题。不是说破坏了哪些字符,而是在非文本格式文件中的“格式命令”在文本格式中就不认识这些“格式命令”,只能强行当作文本来显示出来了,归根到底就是解码方式不同。
如果什么文件都能自己转化成文本文件那就爽了
------解决方案--------------------
只要你明白什么是字符编码,就能明白有什么后果,以及该怎么转换
------解决方案--------------------
o
------解决方案--------------------
楼上好快啊,不过怎么信誉这么低了