A small command-line tool that will convert VCard to CVS or HTML
The program is written in ANSI-C and should be compiled smoothly on most systems.
How it works:
The output is generated in two steps:
First, the whole input file is parsed to identify all used types in all vcards. A type is a data field like "CLASS", "EMAIL", "ADR;TYPE=home" and so on. Thus all used types do appear in the output.
Second, the file is parsed again: each particular vcard included in the file is read.
Once all values of this vcard are assinged to their corresponding type, it is written to stdout immediately.
While reading the values there may be done some conversions: as described in rfc2426 (2.6) a line "[...] longer than 75 characters SHOULD be folded according to the folding procedure described in [MIME DIR]."
If a folded line is detected, the new line characted 'n' is converted to the text value "n".
If you want to ommit some types you can use a drop list. For example:
vcf2csv -d 'ADR;,PHOTO;VERSION;' -i vcards.vcf -w > output.html
This example ommits all types containing the string "ADR;", "PHOTO;" or "VERSION;" and creates a simple html file displaying your vcards in a table, each by a single row.
vcf2csv is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
vcf2csv is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with vcf2csv.