我有一個固定寬度的文本文件,目前我正在使用streamreader/readline()進行讀取。如何讀取文本文件中的二進制字段
有一個字段,當我在記事本中打開++看起來像這樣
[NUL] [NUL] [NUL] [SUB]
其他的都是普通的文本。我知道這個領域,就是要4個字符,表示數量,使得應該是這樣的「0001」
我怎麼能閱讀並轉化爲「0001」
我有一個固定寬度的文本文件,目前我正在使用streamreader/readline()進行讀取。如何讀取文本文件中的二進制字段
有一個字段,當我在記事本中打開++看起來像這樣
[NUL] [NUL] [NUL] [SUB]
其他的都是普通的文本。我知道這個領域,就是要4個字符,表示數量,使得應該是這樣的「0001」
我怎麼能閱讀並轉化爲「0001」
我不知道什麼是「SUB 「是指對應 - 但如果它讀作U + 0001,你總是可以使用:
for (int i = 0; i < 4; i++) {
chars[i + index] = (int) chars[i + index] + '0';
}
(假設你有一個char[]
稱爲chars
,起價index
的4個字節)。
c的第一件事heck是你是否真的正確閱讀角色開始。坦白地說,有一個帶有二進制數據的「文本」文件開頭,但如果它只是字節0-9,那麼在大部分編碼我希望對應於U + 0000到U + 0009 。
在.Net中有'BinaryReader' – 2013-03-06 01:26:35