CSVParser - スコープ指定

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:4分
  • CSVParser API は、カンマ区切り値 (CSV) 形式のレコードをオブジェクトまたは配列に解析するためのメソッドを提供します。

    この API は sn_impex 名前空間で実行されます。

    CSVParser - parseLineToArray(文字列 cvsLine, 文字列 delimiter, 文字列 quoteCharacter)

    渡された CSV 形式のコンテンツを解析してアレイに格納します。

    表 : 1. パラメーター
    名前 タイプ 説明
    csvLine 文字列 解析する CSV コンテンツ
    区切り文字 文字列 オプション。ソース CSV コンテンツのフィールドを区切るために使用する文字です。

    デフォルト:カンマ (,)

    quoteCharacter 文字列 オプション。ソース CSV コンテンツで引用符として使用する文字です。

    デフォルト:二重引用符 ('"')

    表 : 2. 返される内容
    タイプ 説明
    アレイ 渡された CSV コンテンツの各要素の解析値を格納するアレイです。

    例:

    {
    Joe,
    Smith,
    470 W Carmen, Chicago IL, 60640
    }

    この例は、シンプルな 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(文字列 cvsLine, アレイ headers, 文字列 delimiter, 文字列 quoteCharacter)

    渡された CSV 形式のコンテンツを解析してオブジェクトに格納します。

    表 : 3. パラメーター
    名前 タイプ 説明
    csvLine 文字列 解析する CSV コンテンツです。
    ヘッダー 文字列のアレイ CSV コンテンツに関連付けられたヘッダーです。これらのヘッダーは、csvLine 内の対応するコンテンツと同じ順序で指定する必要があります。例:var headers = ['first_name', 'last_name', 'address'];
    区切り文字 文字列 オプション。ソース CSV コンテンツのフィールドを区切るために使用する文字です。

    デフォルト:カンマ (,)

    quoteCharacter 文字列 オプション。ソース CSV コンテンツで引用符として使用する文字です。

    デフォルト:二重引用符 ('"')

    表 : 4. 返される内容
    タイプ 説明
    オブジェクト 渡された CSV コンテンツの各要素のヘッダーとそれに対応する値を格納するオブジェクトです。

    例:

    {
    first_name: Joe,
    last_name: Smith,
    address: 1470 W Carmen, Chicago IL, 60640
    }

    この例は、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

    この例は、header パラメーターの無効なパスが原因である例外応答を示しています。

    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