当前位置:编程学习 > VB >>

一个费解的问题请教:用ADODB读取一个txt文件,ReadText(adReadLine) 直接到了最后

有一个txt文件,每一行用CR LF结束
我用ADODB读取这个文件,使用ReadText(adReadLine) 方法每次读取一行。 
出了一个古怪的问题:读到某一行的时候, 并没有在CR LF处结束,而是直接读到文件尾了。
如果删除掉这一行前面的一些数据,这一行又可以单独读出来。
如果在UE中,在这一行后敲一个回车,这一行也可以单独读出来。
很不理解啊。 

不知道是不是有什么特殊字符会导致这种问题发生? 你是使用Stream对象吧?

估计是回车换行符不完整
LineSeparator默认值是vbcrlf,编码13 10 少一个也会换行但操作就会有问题
楼上说的对,应该是文件本身的问题。 是因为文档中有0x00字符,流读到0x00字符的时候,就出现了这种情况。
这个文档是从linux系统中导出来的,如果在windows系统上随便改动一个地方,再保存,00就会变成20空格,就不会影响流读取。

我还不能理解为什么流读到0x00的时候就会出问题。

UTF8不支持0x00吗?
补充:VB ,  VBA
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,