【发布时间】:2019-06-26 11:48:44
【问题描述】:
我对 C# 很陌生,但我必须使用这种语言,因为它是项目的一部分。 我正在做的基本上是一个特定的文件拆分器/合并器。 当找到特定的标头时,程序将知道在哪里拆分,并且文件必须使用 16 位对齐,所以我必须将其读取为 HEX 中的“16 字节字符串”,例如
+...p......0...
必须读作
2B 00 00 00 70 00 00 00 0D 00 00 00 30 00 00 00
由于编码/字符集问题,我不想将其读取为字符串。 你能给我什么建议?我想到的一个问题是每次读取 16 个字节可能会很慢,因为我尝试在 C++ 中做一个 fread 缓冲区,但它并不快 - 一点也不快 - 但我想不出任何其他方法来做到这一点。
【问题讨论】:
-
您可以使用Stream.Read 方法。 Stream 已经有一个内部缓冲区
-
谢谢。我尝试使用 FileStream 函数来实现它,它似乎可以工作,但它并不是“那么”有效。还有其他建议吗?