On 01/14/2010 12:25 AM, Grove, Michael wrote:
> At 6:47 PM +0800 1/13/10, Majian wrote:
>   
>> Hi,all
>>
>> There is a problem confused me  for a long time .
>> It is:
>>
>> cat  test.txt
>> ------------------------
>> 1,
>> 2,
>> 3,
>> 4,
>> 5,
>> 6,
>> 7,
>> 8,
>> 9,
>> 10,
>> 11,
>> ------------------------
>>
>>
>> Then I want to this result :
>> 1 2   3  6   9
>>        4  7 10
>>        5  8  11
>>
>> I don't know  how to print the result use the Perl script  clearly.
>> Could someone give me some suggestions?
>>     
>   
>> Here are some snippets to get you started (untested):
>>     
>   
>> 1. open the file:
>>     open( my $fh, '<', $filename) or die("Can't open file $filename: $!");
>>
>> 2. Read the lines into an array, one line per element:
>>   my @lines = <$fh>;
>>
>> 3. Remove the newlines and commas from the end of the strings:
>>
>>     chomp(@lines);
>>     s/,$// for @lines;
>>
>> 4. Print the lines in any order according to whatever logic you desire:
>>
>>    print "$_ " for @lines[0,1];
>>     for( my $i = 2; ($i+6) <= $#lines; $i++ ) {
>>        print "$_ " for @lines[$i,$i+3,$i+6];
>>       print "\n";
>>     }
>>
>>
>> --
>> Jim Gibson
>> j...@gibson.org
>>     
> --
>
> Does this occur when you copy a file from one operating system to another in 
> binary? (i.e. return carriage character needs to be translated)?
>
>   
Yeah ~ 

First , Thanks for  Jim Gibson's suggestion and gives me some minds .
Second . I also meet the situation as Grove said .

My source  data  is the hex format, and I want to become the dec format,
so I use the perl function "hex" to solve this problem .
It looks fine, isn't it ?


-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to