ID3V2 タグ、つまり最初にアーティスト名を編集するための Perl コードを書き込もうとしていますが、検索して読み取ることはできますが、新しく書き込もうとすると、ファイルのすべてのコンテンツが新しいアーティスト名に置き換えられ、ファイルが破損します。私はこれに慣れていないので、以下のライブラリを使用するとは思わないので、私が試したコードは親切に教えてください。
#!/usr/bin/perl
use Fcntl qw( SEEK_SET );
my($fh, $filename, $byte_position, $byte_value);
$filename = $ARGV[0];
open(IN, "+>", $filename);
#open IN, $filename;
seek(IN,0,SEEK_SET);
read IN, $temp, 128;
print $temp;
print "\n";
seek(IN,14,SEEK_SET);
read IN, $temp, 16;
print "Artist is :" .$temp;
print "\n";
sysseek(IN,14,SEEK_SET);
#want to replace the Artist Name with new one.
syswrite (IN,$newArtist);
print "\n";
close(IN);