blob: 04e3131fbd5892b25b880187263ec4dc0e4aba60 [file] [log] [blame]
.TH IM_CSV 3 "November 2000"
.SH NAME
im_csv2vips, im_vips2csv \- read and write CSV (comma separated values) files
.SH SYNOPSIS
#include <vips/vips.h>
int im_csv2vips( const char *filename, IMAGE *out )
int im_vips2csv( IMAGE *in, const char *filename )
.SH DESCRIPTION
.B im_csv2vips(3)
reads the CSV (comma separated values) data in filename, and writes the image
out in VIPS format. The output image is always 1 band (monochrome),
IM_BANDFMT_DOUBLE.
The reader is deliberately rather fussy: it will fail if there are any short
lines, or if the file is too short. It will ignore lines that are too long.
Read options can be embedded in the filename. The options can be given in any
order and are:
skip:lines-to-skip
The number of lines to skip at the start of the file. Default zero.
whi:whitespace-characters
The skippable whitespace characters. Default <space> and double quotes (").
Whitespace characters are always run together.
sep:separator-characters
The characters that separate fields. Default ;,<tab>. Separators are
never run together.
line:lines-to-read
The number of lines to read from the file. Default -1, meaning read to end of
file.
.B im_vips2csv(3)
writes the VIPS image to the file as ascii text, one line of text per
scanline. Complex numbers are written as "(real,imaginary)" and will need
extra parsing I guess.
Write options can be embedded in the filename. The options can be given in any
order and are:
sep:separator-string
The string to use to separate numbers in the output. The default is "\\t" (tab).
.SH EXAMPLES
im_csv2vips( "fred.csv:skip:58,sep:\,,line:3", out );
Will read three lines starting at line 59, with space, comma and tab as the
allowed separators. Note that the ',' has to be escaped with a backslash.
im_vips2csv fred.jpg fred.csv:sep:\t
Convert a jpeg to CSV, separating numbers with tab characters.
.SH SEE ALSO
im_read_dmask(3), im_ppm2vips(3)
.SH COPYRIGHT
Hey, you want this? You have it!