Replace the includes of Windows.h with windows.h (#204) (#235)When cross-compiling with MinGW, the compiler is unable to find the
include of Windows.h because windows.h is provided instead.
Replacing the includes of Windows.h with windows.h solves the issue
and still works on Windows because the filesystem is case insensitive.
CSVField: new member function try_parse_decimal() to specify one or more decimal symbols (#226)* CSVField: new member function try_parse_decimal() to specify one or more decimal symbols
* merge from vincentlaucsb/csv-parser: add case '+' in try_parse_decimal(), too
* reworked try_parse_decimal() according to Vincent La's suggestion
CMake options to disable programs building (#148)When linked to my project multiple executable gets build that I don't need nor want
Co-authored-by: Baptiste Lemarcis <Baptiste.Lemarcis@ellensee.ca>
Fix invalid memory access issue in g++ builds (#228)* Try to use shared_ptr<CSVField> to avoid memory issues
* Run tests
* Update single include
* Also added test for empty file SEGFAULT
* diD yoU forGet to #incLude<cStrIng>
Provide directory of library's header as the include directory (#220)Avoid having consumers need to know or declare internal structure of project.
Facilitate use with `FetchContent_Declare` to get the repo and then simply use `target_include_directories( their_proj PRIVATE csv)`.
Fix values with number and dash data type are parsed as integer instead of string (#206)* Fix parsing numbers with dash to string
* Fix single include libs
* Renamed neg_allowed to is_negative
It is unnecessary to determine if the minus sign is allowed separately from whitespace.
---------
Co-authored-by: Slobodan Klentikov <slobodan@adaptam.com>
Co-authored-by: Vincent La <vincela9@gmail.com>
Avoid two msvc compiler warnings (#215)* avoid W4458 - hides-previous-classmember
* avoid W4996 - unsafe function sprintf
* use portable standard version
Adding python bindings for the library. (#183)* Adding python bindings for the library.
* Adding python bindings for the library.
* Adding python bindings for the library.
* Delete data
CSV Parser 2.1.3 Patch 7/28/21 (#179)* Fixed more compilation errors
* Added hex number parsing and a minor bug fix that could cause an assertion failure in C++11
* Fixed some clang issues
* More fixes
* Weird clang issues
* Update test_write_csv.cpp
CSV Parser 2.1.2: July 26, 2021 Patch (#177)* Fix C++-14 compile issues
* CSV Parser should now build with std=c++11 on g++-7.5
* Fixed issues with floating point writing
* Fixed newlines not being escaped
* Update single header
Fix for failing to parse leading and trailing escaped quotes (#158)* added test showing the result of writing a value made of a leading and trailing double quotes
Test was already passing. No fix required to make it pass.
* test showing a failure when parsing leading and trailing escaped double quote
* fix to make test "Test leading and trailing escaped quote" pass
* updated single header to include fix for that makes test "Test leading and trailing escape...
W32 lean and mean (#154)* ~ spacing
* corrected order of application of WIN32_LEAN_AND_MEAN
* made application of WIN32_LEAN_AND_MEAN conditional, to be compatible with pre-existing build-settings
* applied WIN32_LEAN_AND_MEAN changes to single-include
Feature/buffered writer (#147)* Added a new template parameter 'Flush' (bool) to the DelimWriter class. If set to true the class will work as before (flush after every function that writes some data). However if you set it to false, these flush calls will be skipped which improves the execution time.
Also added a destructor (will simply flush) and a flush function.
The functions make_csv_writer_buffered and make_tsv_writer_...
added initialization of _format to CSVReader::CSVReader(csv::string_view filename, CSVFormat format) constructor (#137)Co-authored-by: Alexander Bigerl <bigerl@mail.upb.de>
CSV Parser 2.1.0 (#131)* Update csv_row.cpp
* Simplified handling of quoted fields
* Added tokenizer
* Some minor code clean up
* Update raw_csv_data.hpp
* Some more code clean up
* Added thread safety test
* read_csv() now makes calls that are aligned to the CSV
* Added more CSV writer specializations
* Update test_round_trip.cpp
* Update test_round_trip.cpp
* Simplified CSVWriter
* Update csv_writer.hpp...