CSVParser - Scoped
The CSVParser API provides methods for parsing comma-separated value (CSV) formatted records into an object or an array.
This API runs in the sn_impex namespace.
CSVParser - parseLineToArray(String cvsLine, String delimiter, String quoteCharacter)
Parses passed in CSV formatted content into an array.
| Name | Type | Description |
|---|---|---|
| csvLine | String | CSV content to parse. |
| delimiter | String | Optional. Character used to delineate the fields in the source CSV
content. Default: Comma ',' |
| quoteCharacter | String | Optional. Character used as the quote character in the source CSV content.
Default: Double quote '"' |
| Type | Description |
|---|---|
| Array | Array containing the parsed values for each element in the passed-in CSV
content. For example: |
This example shows simple CSV formatted content parsed into a returned array.
var csvLine = '\"Joe\",\"Smith\",\"1470 W Carmen, Chicago IL, 60640\"';
var delimiter = ',';
var quoteCharacter = '"';
var x = new sn_impex.CSVParser().parseLineToArray(csvLine, delimiter, quoteCharacter);
gs.log(x[0]);
gs.log(x[1]);
gs.log(x[2]);
Output:
Joe
Smith
1470 W Carmen, Chicago IL, 60640
CSVParser - parseLineToObject(String cvsLine, Array headers, String delimiter, String quoteCharacter)
Parses passed in CSV formatted content into an object.
| Name | Type | Description |
|---|---|---|
| csvLine | String | CSV content to parse. |
| headers | Array of Strings | Headers associated with the CSV content. These headers must be specified in the
same order as the corresponding content in csvLine. For
example, var headers = ['first_name', 'last_name',
'address']; |
| delimiter | String | Optional. Character used to delineate the fields in the source CSV
content. Default: Comma ',' |
| quoteCharacter | String | Optional. Character used as the quote character in the source CSV content.
Default: Double quote '"' |
| Type | Description |
|---|---|
| Object | Object containing the header and corresponding value for each element in the
passed-in CSV content. For example: |
This example shows CSV formatted content parsed into a returned object.
var csvLine = '\"Joe\",\"Smith\",\"1470 W Carmen, Chicago IL, 60640\"';
var headers = ['first_name', 'last_name', 'address'];
var delimiter = ',';
var quoteCharacter = '"';
var x = new sn_impex.CSVParser().parseLineToObject(csvLine, headers, delimiter, quoteCharacter);
gs.log(x.first_name);
gs.log(x.last_name);
gs.log(x.address);
Output:
Joe
Smith
1470 W Carmen, Chicago IL, 60640
This example shows an exception response because of an invalid pass of the header parameter.
var csvLine = '\"Joe\",\"Smith\",\"1470 W Carmen, Chicago IL, 60640\"';
var headers = null;
var delimiter = ',';
var quoteCharacter = '"';
try {
var x = new sn_impex.CSVParser().parseLineToObject(csvLine, headers, delimiter, quoteCharacter);
gs.log(x.first_name);
gs.log(x.last_name);
gs.log(x.address);
}
catch(ex) {
gs.info(ex.message);
}
Output:
CSVParser: Header list is empty: no thrown error
*** Script: CSVParser: Header list is empty