CSVParser - スコープ対象
CSVParser API は、カンマ区切り値 (CSV) 形式のレコードを解析してオブジェクトまたはアレイにするためのメソッドを提供します。
この API は sn_impex 名前空間で実行されます。
CSVParser - parseLineToArray(String cvsLine, String delimiter, String quoteCharacter)
CSV 形式のコンテンツを解析してアレイに渡します。
| 名前 | タイプ | 説明 |
|---|---|---|
| csvLine | 文字列 | 解析する CSV コンテンツ。 |
| 区切り文字 | 文字列 | オプション。ソース CSV コンテンツのフィールドを説明するために使用される文字。 デフォルト:カンマ「,」 |
| quoteCharacter | 文字列 | オプション。ソース CSV コンテンツで引用符として使用される文字。 デフォルト:二重引用符「"」 |
| タイプ | 説明 |
|---|---|
| アレイ | 渡された CSV コンテンツ内の各要素の解析済み値を含むアレイ。 たとえば、次のようになります: |
この例は、返されたアレイに解析された単純な CSV 形式のコンテンツを示しています。
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]);
出力:
Joe
Smith
1470 W Carmen, Chicago IL, 60640
CSVParser - parseLineToObject(String cvsLine, Array headers, String delimiter, String quoteCharacter)
CSV 形式のコンテンツを解析してオブジェクトに渡します。
| 名前 | タイプ | 説明 |
|---|---|---|
| csvLine | 文字列 | 解析する CSV コンテンツ。 |
| ヘッダー | 文字列のアレイ | CSV コンテンツに関連付けられたヘッダー。これらのヘッダーは、 csvLineの対応するコンテンツと同じ順序で指定する必要があります。たとえば、 var headers = ['first_name', 'last_name', 'address']; |
| 区切り文字 | 文字列 | オプション。ソース CSV コンテンツのフィールドを説明するために使用される文字。 デフォルト:カンマ「,」 |
| quoteCharacter | 文字列 | オプション。ソース CSV コンテンツで引用符として使用される文字。 デフォルト:二重引用符「"」 |
| タイプ | 説明 |
|---|---|
| オブジェクト | 渡された CSV コンテンツの各要素のヘッダーと対応する値を含むオブジェクト。 たとえば、次のようになります: |
この例は、CSV 形式のコンテンツを解析して返されたオブジェクトに示しています。
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);
出力:
Joe
Smith
1470 W Carmen, Chicago IL, 60640
この例は、ヘッダーパラメーターの無効な渡しによる例外応答を示しています。
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);
}
出力:
CSVParser: Header list is empty: no thrown error
*** Script: CSVParser: Header list is empty