是否可以查看存储的文件由啥序列的 1 和 0 组成?

Posted

技术标签:

【中文标题】是否可以查看存储的文件由啥序列的 1 和 0 组成?【英文标题】:Is it possible to see what sequence of 1s and 0s a stored file is made of?是否可以查看存储的文件由什么序列的 1 和 0 组成? 【发布时间】:2018-11-05 05:37:33 【问题描述】:

我在想,计算机中的所有内容都存储为 1 和 0 的序列。因此,对于存储在硬盘驱动器中的任何文件和软件,同样的事情也应该如此。但是是否可以看到特定文件的 1 和 0 的序列?例如,假设在一个文件夹中,有名为“myfile.docx”、“myfile.iso”、“myfile.dll”、“myfile.rar”的文件,......我怎么能看到1的序列和 0 每个这些文件是由什么组成的?

提前致谢。

【问题讨论】:

【参考方案1】:

有许多十六进制编辑器可以显示二进制数据。我最近没用过,所以我没有任何具体的建议。

【讨论】:

谢谢。我会试试的。【参考方案2】:

您可以在hex editor 中打开文件,这可能会显示类似于this 的内容:

您正在查看的是文件中字节的十六进制表示,即二进制数据。一些编辑器可能会选择将其显示为二进制 0 和 1。当然,在这种情况下会有更多可供查看。如果做不到这一点,您可以从十六进制表示中推断出二进制数据。或者甚至编写一个程序,在其中粘贴十六进制值,它会为您计算二进制表示。

您还可以使用多种语言编写一个程序,为您自动执行此操作。例如,如果您在 C# 中以 byte[] 的形式读取文件,那么您可以逐字节地循环遍历它,将这些字节的“二进制”输出到页面。 (辅助方法上的一些数学运算可以将一个数字值(全是一个字节)转换为一系列 0 和 1 以打印到屏幕上。)我想大多数(如果不是全部)合理的编程语言都会有类似的操作可用.

【讨论】:

谢谢大卫。我会试试的。 我试过了,但我有一个问题。有一个文件,windows 显示其大小等于 383 字节,但在十六进制编辑器中有 287 字节。造成这种差异的原因是什么? @Cror2014:我的猜测是文件系统开销。对于大文件,差异可以忽略不计,但对于小文件,差异很明显(尽管仍然可以忽略不计)。文件系统可能会保留特定大小的块,可能会在文件中写入其他数据以跟踪其排列等。我不会担心。

以上是关于是否可以查看存储的文件由啥序列的 1 和 0 组成?的主要内容,如果未能解决你的问题,请参考以下文章

lambda表达式由啥组成

寄存器由啥芯片组成

酒店客房门锁系统的工作原理是啥?系统由啥组成?

CPU由哪些部件组成?表征CPU性能的特征是啥?CPU的运行速度由啥来决定?

变量名只能由啥和啥三种字符组成,字符个数不得超过?

Rails/Devise 会话中的warden 数据由啥组成?