如何读取文本文件中的二进制字段

本文关键字:二进制 字段 文件 何读 取文本 | 更新日期: 2023-09-27 18:02:40

我有一个固定宽度的文本文件,我正在使用streamreader/readline()来读取。

当我打开notepad++时,有一个字段看起来像这样

[NUL] [NUL] [NUL](子)

其他都是正常文本。我知道这个字段应该是4个字符,代表一个计数,所以应该看起来像'0001'

如何读取并转换为'0001'

如何读取文本文件中的二进制字段

我不确定"SUB"是什么意思对应-但如果它被读取为U+0001,你总是可以使用:

for (int i = 0; i < 4; i++) {
    chars[i + index] = (int) chars[i + index] + '0';
}

(假设您有一个名为charschar[],从index开始有4个字节)

首先要检查的是你是否正确地读取了开头的字符。坦率地说,有一个带有二进制数据的"文本"文件开始有点危险,但如果它只有字节0-9,那么在大多数编码中,我希望它对应于U+0000到U+0009。