【发布时间】:2020-04-23 15:52:24
【问题描述】:
我有一个StreamReader,我想读取下一个n 字节并将它们作为字符串返回。
只有一个 ReadLine() 方法返回一个字符串,但我的文件没有换行符 (CR/LF)。 Read() 改为返回 int,ReadBlock() 填充 char[]。
有简单的方法吗?我应该使用Encoding.GetString() 吗?然后我需要读到byte[]。
我发现编码和超过 1 个字节的字符存在问题,所以确切地说,我想读取 n 字节并且必须考虑编码。
【问题讨论】:
-
这能回答你的问题吗? How do I convert StreamReader to a string?
-
据我所知,它使用 ReadToEnd() 方法,所以我不这么认为,但谢谢。
-
为什么你有/正在使用
StreamReader?它用于读取文本文件。你不应该用它来读取二进制文件。此外,“我想读取n字节并且必须考虑编码”似乎是矛盾的。要么你想读取基于编码的n字符,要么你想读取n忽略编码的字节。 -
我正在阅读一个文本文件!我只是不想逐行阅读。我想读 n 个字符。假设每个字符是一个字节。
标签: c# .net string streamreader