4 use MARC::File::XML ( BinaryEncoding => 'utf-8' );
8 my $split_every = $ARGV[0];
11 binmode(STDOUT, ':utf8');
12 binmode(STDIN, ':utf8');
14 foreach $argnum ( 1 .. $#ARGV ) {
16 print STDERR "Processing " . $ARGV[$argnum] . "\n";
18 my $batch = MARC::Batch->new('XML',$ARGV[$argnum]);
20 $batch->warnings_off();
22 while ( my $record = $batch->next() ) {
26 my $filename = $ARGV[$argnum] . ".split." . floor( $count / $split_every ) . ".xml";
28 open FILE, ">>$filename";
29 binmode(FILE, ':utf8');
30 print FILE $record->as_xml();
33 print STDERR "Processed $count records.\n";