感谢您使用微软产品。这是因为BinaryReader与FileStream绑定的时候,FileStream的缓冲区只存放了10465个byte,而不是10465个中文字符(双字节)。而BinaryReader读取到5233个中文字符的时候,缓冲区里已经没有字符了。这样的冲突是因为BinaryReader是设计用来读取二进制的基本数据类型的。而TextReader被设计用来读取字符型的数据。因此当您的文件与字符相关紧密的时候(尤其涉及到双字节的中文或其他字符的时候)应该使用TextReader。希望对您有所帮助。-微软全球技术中心 VC开发支持本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。