// test046.cpp - write data with custom separator #include #include "unittest.h" int main() { int rv = 0; std::string csvref = "-;A;B;C\n" "1;3;9;81\n" "2;4;16;256\n" ; std::string csv = "-;A;B;C\n" "1;0;0;0\n" "2;0;0;0\n" ; std::string path = unittest::TempPath(); unittest::WriteFile(path, csv); try { rapidcsv::Document doc(path, rapidcsv::LabelParams(0, 0), rapidcsv::SeparatorParams(';')); doc.SetCell(0, 0, 3); doc.SetCell(1, 0, 9); doc.SetCell(2, 0, 81); doc.SetCell("A", "2", "4"); doc.SetCell("B", "2", "16"); doc.SetCell("C", "2", "256"); unittest::ExpectEqual(int, doc.GetCell(0, 0), 3); unittest::ExpectEqual(int, doc.GetCell(1, 0), 9); unittest::ExpectEqual(int, doc.GetCell(2, 0), 81); unittest::ExpectEqual(std::string, doc.GetCell("A", "2"), "4"); unittest::ExpectEqual(std::string, doc.GetCell("B", "2"), "16"); unittest::ExpectEqual(std::string, doc.GetCell("C", "2"), "256"); doc.Save(); std::string csvread = unittest::ReadFile(path); unittest::ExpectEqual(std::string, csvref, csvread); } catch (const std::exception& ex) { std::cout << ex.what() << std::endl; rv = 1; } unittest::DeleteFile(path); return rv; }