in reply to text file validation

Hi lax,

Take a look at substr:
#!/usr/bin/perl use strict; use warnings; my $string="012345678901234567890" print substr($string,0,16);
My test string is 20 characters long, so I have set the length of the substr function to 16. you can easily change that to 160 for your line.

Update: Oops I forgot that you may not know how to open a file:
#!/usr/bin/perl use strict; use warnings; open(FILE,"yourfilenamehere.txt") or die "Could not open file $!\n"; # + open yourfilenamehere.txt for reading while(<FILE>){ #read yourfilenamehere.txt a line at a time chomp; print "\n" . substr($_,0,160); #as described above, except prin +t first 160 characters only } close FILE #close filehandle
You will need to change the filename, obviously. You may wish to check out the Tutorials section of this site.

Update: Added comments to second code posting.

Hope this helps.

Martin

Replies are listed 'Best First'.
Re^2: text file validation
by lax (Initiate) on Jul 21, 2006 at 13:47 UTC
    hi monks
    thanks for your piece of code..

    $message = #22 2006-05-02 12:12:35 hjjjdddddd Advisory.No action required. event-101 severe is the name of the alarm but the way it is dispalyed cannot be digested at all 12121212121122
    substr( $message,0,160 );

    the above code truncates to 140 characters and display them instead of displaying 160 characters

    kindly help me out and also tell me a way to display only the first 160 characters

    thanks
    lax
      lax,

      Using the following code and your string I get 160 characters output:
      #!/usr/bin/perl use strict; use warnings; my $string="#22 2006-05-02 12:12:35 hjjjdddddd Advisory.No action requ +ired. event-101 severe is the name of the alarm but the way it is dis +palyed cannot be digested at all 12121212121122"; print substr($string,0,160); <code> Output: <code> #22 2006-05-02 12:12:35 hjjjdddddd Advisory.No action required. event- +101 severe is the name of the alarm but the way it is dispalyed canno +t be digested at all
      Can you please post the complete code you are using?

      Update: Fixed typo, print substr($string,0,16); changed to print substr($string,0,160);

      Martin