【问题标题】:Convert a file to Binary or Hexadecimal将文件转换为二进制或十六进制
【发布时间】:2013-07-26 09:11:30
【问题描述】:

所以我有一个需要二进制或十六进制格式的文件。我能够找到的所有内容基本上都表示将文本存储在字符串中并从那里将其转换为二进制或十六进制,但我不能这样做。该文件是使用其自己的私有字符集编写的,该字符集使用 null 和系统十六进制代码,因此记事本不知道如何处理这些字符并用错误的字符和空格替换它。这会扭曲信息,因此如果我尝试将其转换为二进制/十六进制,它将是不正确的。

我真的只需要将二进制/十六进制信息存储在字符串或文本框中,以便我可以使用它。我真的不需要将它保存为文件。

【问题讨论】:

  • 无意冒犯,但我从未听说过-二进制文件,除非您使用的是量子计算机。你到底想在这里做什么?您能否发布一个示例,以及您尝试过的无效操作?
  • 不,我想你不明白。它是一个二进制文件。它是 .PTC 文件格式,但可以转换回 .txt 文件。但是我需要在尝试将其转换为 ascii 之前获取二进制信息,因为它会扭曲信息。 http://img42.com/XcMVd 这是一个转换成文本后的例子。顶部是错误的,底部是我手动获取十六进制并转换它。我必须在尝试转换之前获取二进制数据。
  • 该图像使用的是我制作的自定义字体,它代表了制作程序所用的字符集,所以底部的字体与它的外观完全相同,但我必须使用十六进制编辑器来进去复制十六进制数据,这样我就可以转换它了。我需要代码来自动读取二进制/十六进制代码,以便我可以手动将十六进制信息解密为正确的字符。我希望这是有道理的。
  • 为什么不直接将文件作为流打开?
  • 我尝试使用我找到的文件流代码片段,但我真的不知道如何使用它们。想我现在有一个字节数组中的数据。我不确定,因为我不知道如何将它从字节数组转换为二进制格式的单个字符串,而且我不了解缓冲区大小,或者这是否会导致它无法读取整个文件。

标签: vb.net binary hex


【解决方案1】:

没关系,我终于想通了。我使用文件流逐字节读取数据。我不明白如何转换它,因为当我知道二进制数据应该是“1010000”时,数组中的第一个字节数据显示为 80(当时我没有意识到 80 是十进制格式) .

无论如何,我使用了 bitconverter.tostring 并将所有内容放在一起并将其转换为十六进制格式。所以我现在一切都很好。

【讨论】:

    猜你喜欢
    • 2012-06-26
    • 2016-08-28
    • 2013-07-25
    • 1970-01-01
    相关资源
    最近更新 更多