Let's assume for the sake of argument that you want to create a CSV (comma-separated-value) file. The approach is to iterate through the lines of the flat-file database, converting each record into the desired otuput format (CSV).
Iterating through the lines of a file is fairly simple, just let perl's <> operator open the file for you:
# loop through every file named on the command line, setting # $_ to each successive line while (<>) { chomp; # remove any line ending (implicitly uses $_) # ... aha! the interesting part goes here my @fields = split /\|/; # implicitly uses $_ # Now we have the values for this row in $fields[0], $fields[1], ... # write to STDOUT print join( ',', @fields ), "\n"; }
BTW, exclusive of anything related to Perl, Excel should be able to import this format directly (just name the file with a '.txt' extension and useExcel's Import Wizard), but I suspect that is not what you are asking.
Of course, you could simply translate '|' (pipe) characters into ',' (commas), but I suspect that, too, is not the point of your question.
dmm
You can give a man a fish and feed him for a day ...In reply to Re: Exporting from flatfile database
by dmmiller2k
in thread Exporting from flatfile database
by Nitroperl
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |