我有一个压缩文件。让我们忽略 tar 命令,因为我不确定它是否被压缩。我所知道的是它是在 fortran77 中压缩的,这就是我应该用来解压缩它的。我该怎么做?解压是一条路还是我需要某个头文件来引导(直接)解压?
它不是 .Z 文件。它以别的东西结束。我需要什么来解压它?我知道最终解压缩档案的格式。
文件是否有可能通过一种简单的方式压缩但它以不同的扩展名出现?
我有一个压缩文件。让我们忽略 tar 命令,因为我不确定它是否被压缩。我所知道的是它是在 fortran77 中压缩的,这就是我应该用来解压缩它的。我该怎么做?解压是一条路还是我需要某个头文件来引导(直接)解压?
它不是 .Z 文件。它以别的东西结束。我需要什么来解压它?我知道最终解压缩档案的格式。
文件是否有可能通过一种简单的方式压缩但它以不同的扩展名出现?
首先,让我们把“fortran”部分排除在外。没有标准(我指的是 fortran 标准)压缩或解压缩文件的方法,因为 fortran 没有压缩实用程序作为语言的一部分。也许有人自己写了一些,但这完全取决于他。
因此,您会被公开可用的压缩实用程序等困住。在有这些可用的系统和支持它的编译器上(它会有所不同),您可以使用 SYSTEM 函数,该函数通过将命令字符串传递给操作系统的命令解释器来执行系统命令(我知道它存在于 cvf 中,可能ivf ...您可能应该在编译器的帮助下查找它)。
既然你已经问了一个类似的问题,我假设你仍然有这个问题。您提到“它是用 fortran77 压缩的”。你是什么意思 ?有人在 f77 中构建了一个压缩实用程序并使用它吗?所以这将使它成为一个定制的解决方案?
如果它是某种自定义解决方案,那么它实际上可以是任何东西,因为许多算法都可以用作“压缩算法”(与纯文本相比,将文件写入二进制文件将节省几个字节;瞧,“压缩”)
还是我误解了什么?请详细说明一下。
我的猜测是你有一个二进制文件,它是由 Fortran 程序输出的。这些看起来像压缩文件,因为它们在文本编辑器中不可读。
Fortran 允许您将内存中的数据写入文件而不对其进行格式化,以便您以后可以重新加载它而无需解析它。但是,问题是您需要原始源代码才能查看文件中写入了哪些类型的变量。
如果您无法访问 fortran 源代码,但有很多空闲时间,您可以编写一些简单的 fortran 程序并猜测正在使用的变量类型。不过,我不建议这样做,因为 Fortran 不是很宽容。
如果您想尝试一些简单的源代码,请查看此页面,该页面详细介绍了 Fortran 中的二进制读写,并包含代码示例。只需从替换reclength=reclength*4
为reclength=reclength*2
双精度实数开始。
没有标准的减压方法,有吨。您需要知道用于压缩它的方法才能解压缩它。
您可以使用file命令检查它是否是已知的压缩文件类型。假设文件返回类似于“二进制文件”的内容,那么您几乎可以肯定正在查看纯二进制数据。
你说文件扩展名不是.Z,而是别的。那是什么东西?
如果是 .gz(在 Unix 系统上很常见),“gunzip”是正确的命令。如果是 .tgz,您可以对其进行压缩和解压缩。(或者您可以阅读 tar(1) 的手册页,因为它可能具有 gunzip 和解压缩的能力。)
如果它在 Windows 上,请查看 Windows 是否可以直接读取它,因为文件系统本身似乎支持 ZIP 格式。
如果还有其他内容,请仅列出文件名(或者,如果存在安全隐患,请列出以第一个句点开头的文件名),我们也许能够弄清楚。