1st version
This commit is contained in:
82
Jira_helper/node_modules/csv-parse/README.md
generated
vendored
Normal file
82
Jira_helper/node_modules/csv-parse/README.md
generated
vendored
Normal file
@@ -0,0 +1,82 @@
|
||||
# CSV parser for Node.js and the web
|
||||
|
||||
[](https://github.com/adaltas/node-csv/actions)
|
||||
[](https://www.npmjs.com/package/csv-parse)
|
||||
[](https://www.npmjs.com/package/csv-parse)
|
||||
|
||||
The [`csv-parse` package](https://csv.js.org/parse/) is a parser converting CSV text input into arrays or objects. It is part of the [CSV project](https://csv.js.org/).
|
||||
|
||||
It implements the Node.js [`stream.Transform` API](http://nodejs.org/api/stream.html#stream_class_stream_transform). It also provides a simple callback-based API for convenience. It is both extremely easy to use and powerful. It was first released in 2010 and is used against big data sets by a large community.
|
||||
|
||||
## Documentation
|
||||
|
||||
- [Project homepage](https://csv.js.org/parse/)
|
||||
- [API](https://csv.js.org/parse/api/)
|
||||
- [Options](https://csv.js.org/parse/options/)
|
||||
- [Info properties](https://csv.js.org/parse/info/)
|
||||
- [Common errors](https://csv.js.org/parse/errors/)
|
||||
- [Examples](https://csv.js.org/project/examples/)
|
||||
|
||||
## Main features
|
||||
|
||||
- Flexible with lot of [options](https://csv.js.org/parse/options/)
|
||||
- Multiple [distributions](https://csv.js.org/parse/distributions/): Node.js, Web, ECMAScript modules and CommonJS
|
||||
- Follow the Node.js streaming API
|
||||
- Simplicity with the optional callback API
|
||||
- Support delimiters, quotes, escape characters and comments
|
||||
- Line breaks discovery
|
||||
- Support big datasets
|
||||
- Complete test coverage and lot of samples for inspiration
|
||||
- No external dependencies
|
||||
- Work nicely with the [csv-generate](https://csv.js.org/generate/), [stream-transform](https://csv.js.org/transform/) and [csv-stringify](https://csv.js.org/stringify/) packages
|
||||
- MIT License
|
||||
|
||||
## Usage
|
||||
|
||||
Run `npm install csv` to install the full CSV module or run `npm install csv-parse` if you are only interested by the CSV parser.
|
||||
|
||||
Use the callback and sync APIs for simplicity or the stream based API for scalability.
|
||||
|
||||
## Example
|
||||
|
||||
The [API](https://csv.js.org/parse/api/) is available in multiple flavors. This example illustrates the stream API.
|
||||
|
||||
```js
|
||||
import assert from "assert";
|
||||
import { parse } from "csv-parse";
|
||||
|
||||
const records = [];
|
||||
// Initialize the parser
|
||||
const parser = parse({
|
||||
delimiter: ":",
|
||||
});
|
||||
// Use the readable stream api to consume records
|
||||
parser.on("readable", function () {
|
||||
let record;
|
||||
while ((record = parser.read()) !== null) {
|
||||
records.push(record);
|
||||
}
|
||||
});
|
||||
// Catch any error
|
||||
parser.on("error", function (err) {
|
||||
console.error(err.message);
|
||||
});
|
||||
// Test that the parsed records matched the expected records
|
||||
parser.on("end", function () {
|
||||
assert.deepStrictEqual(records, [
|
||||
["root", "x", "0", "0", "root", "/root", "/bin/bash"],
|
||||
["someone", "x", "1022", "1022", "", "/home/someone", "/bin/bash"],
|
||||
]);
|
||||
});
|
||||
// Write data to the stream
|
||||
parser.write("root:x:0:0:root:/root:/bin/bash\n");
|
||||
parser.write("someone:x:1022:1022::/home/someone:/bin/bash\n");
|
||||
// Close the readable stream
|
||||
parser.end();
|
||||
```
|
||||
|
||||
## Contributors
|
||||
|
||||
The project is sponsored by [Adaltas](https://www.adaltas.com), an Big Data consulting firm based in Paris, France.
|
||||
|
||||
- David Worms: <https://github.com/wdavidw>
|
||||
Reference in New Issue
Block a user