All Projects → nrinaudo → Kantan.csv

nrinaudo / Kantan.csv

Licence: apache-2.0
CSV handling library for Scala

Programming Languages

scala
5932 projects

Labels

Projects that are alternatives of or similar to Kantan.csv

DataAnalyzer.app
✨🚀 DataAnalyzer.app - Convert JSON/CSV to Typed Data Interfaces - Automatically!
Stars: ✭ 23 (-92.46%)
Mutual labels:  csv
Node Csv
Full featured CSV parser with simple api and tested against large datasets.
Stars: ✭ 3,068 (+905.9%)
Mutual labels:  csv
Notebooks
All of our computational notebooks
Stars: ✭ 292 (-4.26%)
Mutual labels:  csv
jupyterlab-spreadsheet-editor
JupyterLab spreadsheet editor for tabular data (e.g. csv, tsv)
Stars: ✭ 72 (-76.39%)
Mutual labels:  csv
Tableexport
tableExport(table导出文件,支持json、csv、txt、xml、word、excel、image、pdf)
Stars: ✭ 261 (-14.43%)
Mutual labels:  csv
Flatfiles
Reads and writes CSV, fixed-length and other flat file formats with a focus on schema definition, configuration and speed.
Stars: ✭ 275 (-9.84%)
Mutual labels:  csv
civ
A simple CSV interactive viewer written in Go
Stars: ✭ 23 (-92.46%)
Mutual labels:  csv
Elasticsearch loader
A tool for batch loading data files (json, parquet, csv, tsv) into ElasticSearch
Stars: ✭ 300 (-1.64%)
Mutual labels:  csv
Sqawk
Like Awk but with SQL and table joins
Stars: ✭ 263 (-13.77%)
Mutual labels:  csv
Fastcsv
High performance CSV reader and writer for Java.
Stars: ✭ 293 (-3.93%)
Mutual labels:  csv
qwery
A SQL-like language for performing ETL transformations.
Stars: ✭ 28 (-90.82%)
Mutual labels:  csv
Comma Chameleon
A desktop CSV editor for data publishers
Stars: ✭ 259 (-15.08%)
Mutual labels:  csv
Csvkeychain
Import/export between Apple Keychain.app and plain CSV file.
Stars: ✭ 281 (-7.87%)
Mutual labels:  csv
text2json
Performant parser for textual data (CSV parser)
Stars: ✭ 33 (-89.18%)
Mutual labels:  csv
Exporttools.bundle
Export tools for Plex
Stars: ✭ 294 (-3.61%)
Mutual labels:  csv
brain-brew
Automated Anki flashcard creation and extraction to/from Csv
Stars: ✭ 55 (-81.97%)
Mutual labels:  csv
Loaders.gl
Loaders for big data visualization. Website:
Stars: ✭ 272 (-10.82%)
Mutual labels:  csv
Excel4j
✨ Excel operation component based on poi & CSV ✨
Stars: ✭ 305 (+0%)
Mutual labels:  csv
Http Rpc
Lightweight REST for Java
Stars: ✭ 298 (-2.3%)
Mutual labels:  csv
Sq
swiss-army knife for data
Stars: ✭ 275 (-9.84%)
Mutual labels:  csv

kantan.csv

Build Status codecov Maven Central Join the chat at https://gitter.im/nrinaudo/kantan.csv

CSV is an unfortunate part of life. This attempts to alleviate the pain somewhat by letting developers treat CSV data as a simple iterator.

As much as possible, kantan.csv attempts to present a purely functional and safe interface to users. I've not hesitated to violate these principles internally however, when it afforded better performances. This approach appears to be somewhat successful.

Documentation and tutorials are available on the companion site, but for those looking for a few quick examples:

import java.io.File
import kantan.csv._         // All kantan.csv types.
import kantan.csv.ops._     // Enriches types with useful methods.
import kantan.csv.generic._ // Automatic derivation of codecs.

// Reading from a file: returns an iterator-like structure on (Int, Int)
new File("points.csv").asCsvReader[(Int, Int)](rfc)

// "Complex" types derivation: the second column is either an int, or a string that might be empty.
new File("dodgy.csv").asCsvReader[(Int, Either[Int, Option[String]])](rfc)

case class Point2D(x: Int, y: Int)

// Parsing the content of a remote URL as a List[Point2D].
new java.net.URL("http://someserver.com/points.csv").readCsv[List, Point2D](rfc.withHeader)

// Writing to a CSV file.
new File("output.csv").asCsvWriter[Point2D](rfc)
  .write(Point2D(0, 1))
  .write(Point2D(2, 3))
  .close()

// Writing a collection to a CSV file
new File("output.csv").writeCsv[Point2D](List(Point2D(0, 1), Point2D(2, 3)), rfc)

kantan.csv is distributed under the Apache 2.0 License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].