From c40ff89fbe5122c111e821483e40f4a4a011fee6 Mon Sep 17 00:00:00 2001 From: Natalie Adams Date: Sun, 16 May 2021 21:51:08 -0500 Subject: [PATCH] dump from hg repo --- README.md | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 537f6fe..815d80a 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,43 @@ # csvpp -A csv reader/writer in C++ using standard objects. \ No newline at end of file +A csv reader/writer in C++ using standard objects. + +Features: + +* Read from a file or string +* Support for optionally enclosed elements (using " as the enclosure ) +* Easy to iterate through the rows +* Associative arrays which allow accessing by the column name! +* Optionally - RowReader has two optional constructor parameter, first is a bool which determines if it should use headers and second is the newline delimeter. The default is true (use headers) and \n for newline +* Automatically adjusts for \n or \r\n + +Here is a very simple example using a string: + +```cs +#include +#include +#include "csvpp.h" + +using namespace std; +using namespace csvpp; + +int main() +{ + + RowReader tmp; + //RowWriter rw; + stringstream ss; + ss << "field1,field2,field3\r\n123,234,345\r\n999,000,111\r\n"; + ss >> tmp; + rowiterator it; + while(ss << tmp) + { + for(it = tmp.begin(); it != tmp.end(); it++) + cout << it->first << " => " << it->second << endl; + cout << endl; + } + //cout << rw; + return 0; + +} +``` \ No newline at end of file