There are two modules that can quickly help you manipulate CSV files. The first is Text::CSV, and the second is its faster but possibly harder to install sibling, Text::CSV_XS. There is also another module which is pretty flexible, allowing you to select any character as the delimiter (not just commas): Text::xSV.
The rest of your question is a little trickier, and very much dependant on the nature of your CSV data.
It may be helpful to build sets that can be compared using List::Compare. You will have to decide what constitutes "an added row", versus "a modified row". Is there some unique key in each row that you can use to watch for new keys being added as an indication of new rows? That would be the most ideal situation. But if not, you'll have to decide what combination of fields will come together to create unique keys so that you can determine whether you're lookig at a modified row or a new row.
Dave
In reply to Re: Comparing CSV files
by davido
in thread Comparing CSV files
by benz
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |