如何在octave 3.2.4中用fopen读取gzip-File?

时间:2013-12-21 15:15:46

标签: octave

我需要使用fopen打开一个gzip文件。手册(help fopen)说明了将bz添加到模式字符串中:

[f, msg] = fopen('file.gz', 'rbz')

导致错误:

f = -1
msg = 

rbr分开工作,但与z无关。我误解了手册吗?

可以通过

生成示例文件
echo -e "1,2\n2,3\n3,4\n4,3\n5,5" | gzip > file.gz

八度版本3.2.4是由我的操作系统引起的:Ubuntu 12.04.3 LTS

1 个答案:

答案 0 :(得分:0)

function data = zcatcsvfile(filename, firstline)
    data = [];
    [status, content] = system(cstrcat('zcat ', filename, ' | tail -n +', num2str(firstline)));
    data = str2num(content);
endfunction

使用此功能读取gzip压缩文件filename并读取第一行firstline。如果文件的标题为5行:

data=zcatcsvfile('data.gz', 6)