Fortran直接读取压缩文件
各位大侠,我想问下如何用Fortran直接读取压缩文件,而不是先解压缩,在读文件内容呢?先解压缩再读取会遇到一个问题,就是压缩时间不好确定,有没有函数可以判断是否解压成功呢?
Fortran语法中没有这类函数。
你使用什么操作系统?什么方式来运行解压程序?何种解压程序?何种压缩格式?这可能都会影响你的问题如何解决。 会F与C混合编程的话,直接上zlib 楚香饭 发表于 2015-11-15 09:12
Fortran语法中没有这类函数。
你使用什么操作系统?什么方式来运行解压程序?何种解压程序?何种压缩格式 ...
操作系统是win7,我是用call system来运行winrar,解压格式是zip pasuka 发表于 2015-11-15 16:42
会F与C混合编程的话,直接上zlib
有没有代码可供参考呢?
我手边没有WinRAR,用 7zip 试了一下,可以实现先解压,然后再接着计算。并且有返回值,是0的话,表示正常解压结束。否则表示中途出错。
use dfport
integer :: i
pause
i = system("C:\Progra~1\7-Zip\7z.exe a -t7z 1.7z 2.exe")
write(*,*) i
end
pengfukai 发表于 2015-11-16 12:51
有没有代码可供参考呢?
zlib主页上面就有很多C的例子,F与C混编并不复杂或者高深,尤其是gcc系列的编译器 fcode 发表于 2015-11-16 14:06
我手边没有WinRAR,用 7zip 试了一下,可以实现先解压,然后再接着计算。并且有返回值,是0的话,表示正 ...
非常感谢你的帮助!我测试了一下,7-Zip在解压和压缩过程中好像不会出现多线程的问题,而是一个文件压缩(解压)完成了之后再进行下一个文件,非常方便也节省时间。另外,我想问一下,system这个函数好像在dfport,dflib,以及不引用外部库文件是也有,请问这3者之间有什么区别吗?如果我想学习这几个库文件内函数的用法,有什么好的方法吗?谢谢!~ pasuka 发表于 2015-11-16 22:01
zlib主页上面就有很多C的例子,F与C混编并不复杂或者高深,尤其是gcc系列的编译器 ...
好的,谢谢~,英语还不是太好,读起来有点吃力~ 没有区别。实际就一个 system
页:
[1]