在Linux中将二进制转换为文本

发布于 2024-12-05 03:48:39 字数 71 浏览 0 评论 0原文

我有一个大的二进制文件,是通过以二进制格式写入浮点数数组而生成的。

现在我怎样才能简单地将二进制文件转换为文本?

I have a big binary file I have produced by writing an array of float numbers in binary format.

Now how can I simply convert that binary file to text ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

深陷 2024-12-12 03:48:39

使用 UNIX od 命令和 -t f4 选项将文件读取为 4 字节浮点值。 -A n 选项对于避免打印文件偏移量也很有用。这是我创建的示例文件的输出。

/tmp> od -A n -t f4 b.dump
        -999.876        -998.876        -997.876        -996.876
        -995.876        -994.876        -993.876        -992.876
        -991.876        -990.876        -989.876        -988.876
        -987.876        -986.876        -985.876        -984.876

Use the UNIX od command, with the -t f4 option to read the file as 4 byte floating point values. The -A n option is also useful to avoid printing the file offsets. Here is the output of an example file that I created.

/tmp> od -A n -t f4 b.dump
        -999.876        -998.876        -997.876        -996.876
        -995.876        -994.876        -993.876        -992.876
        -991.876        -990.876        -989.876        -988.876
        -987.876        -986.876        -985.876        -984.876
画骨成沙 2024-12-12 03:48:39

您将需要反转该过程。

  1. 将文件读回到浮点数组中。
  2. 使用 printf() 或您最喜欢的 io 函数打印数组。

任何其他方法都会是丑陋和痛苦的;并不是说这一开始并不难看。

You will need to reverse the process.

  1. Read the file back into an array of floats.
  2. Print the array use printf() or your favorite io function.

Any other approach will be ugly and painful; not to say this isn't ugly to start with.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文