C++ module for CSV parsing. Moved to https://git.luispaulino.com/luispaulino/csv for SHA256 support.
- C++ 77.9%
- Meson 22.1%
| src | ||
| test | ||
| .clangd | ||
| .gitignore | ||
| LICENSE | ||
| meson.build | ||
| README.md | ||
CSV Parser
C++ module for single-threaded CSV parsing.
Usage
A delimited file can be loaded into an std::vector<std::vector<std::string>> by calling csv::parse(pathname, delimiter).
Example
import csv;
import std;
int main() {
std::string filepath = "/path/to/file";
char delimiter = ',';
auto parsed_data = csv::parse(filepath, delimiter)
if (!parsed_data.has_value()) {
std::println("{}", parsed_data.error().message);
return -1;
}
auto [row_num, col_num, temp_data] = parsed_data.value();
auto data = temp_data | std::views::join | std::ranges::to<std::vector>();
auto data_view = std::mdspan<
std::string,
std::extents<std::size_t, std::dynamic_extent, std::dynamic_extent>,
std::layout_left
>(data.data(), row_num, col_num);
}