[問題] binary file 讀取問題
有個binary file
以下是我code
#!/usr/bin/perl -w
use strict;
my $fn = shift;
my $n = shift;
my $v;
open FH, $fn or die;
seek FH, 8*($n-1), 0 or die; # since a double requires 8 bytes
read FH, $v, 8;
$v = unpack( 'd', $v );
print "$v\n";
執行 ./paly.pl file 50000
輸出結果 0.227
改良成為一串的讀取
use strict;
my $fn = shift;
my $n = shift;
my $end =shift;
my $v;
my @out;
open FH, $fn or die;
for ($n .. $end){
seek FH, 8*($_-1), 0 or die; # since a double requires 8 bytes
read FH, $v, 8;
$v = unpack( 'd', $v );
push (@out, $v);
}
print "@out\n";
執行 ./paly.pl file 50000 50010
輸出結果 0.227 0.239 0.264 0.275 0.286 0.308 0.319 0.329 0.329 0.341 0.35
我想請問有沒有其他方法一口氣讀 50000~50010 的字串
謝謝!
===============================================
上網查 有一個作法,但是try了後還是不行
是改寫成 $v = unpack('d16',$v);
--
--
▂▂ ▂▂▂
▂▄▅▅▄▆█ _█◣
◢ (●) ◣/\\
丫 │◥  ̄◤
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.215.174