in reply to update flat file

Firstly, in you code:

Line 12 ends with a : and should be a ;
Line 14 must not have a comma after the file handle.. ie print NEWA $_;   }
Line 16 should be close NEWA; }
Also close FILEB; should be added.

Update:

If today is 01/12/2003 then it will take all the records have today date is 01/12/2003 with expire 07/11/2003 from B.txt

Nowhere in your code do you test for Todays date..? Enter all the Date::Manip gurus for date matching..;)

It Also seems that you open and close A and New file A for each line that you read of file B... this seems a little IO heavy does it not.

-----
Of all the things I've lost in my life, its my mind I miss the most.