CSVファイル読み取り処理

オペレーション名

CSVファイル読み取り

機能概要

CSV(Comma Separated Values)形式、TSV(Tab Separated Values)形式などの形式のファイルを読み取ります。

データモデル

本コンポーネントのデータモデルはテーブルモデル型です。

プロパティ

基本設定
項目名 必須/省略可 変数の使用 説明 備考
名前 必須 使用不可 スクリプトキャンバス上での名前を入力します。  
必須設定
項目名 必須/省略可 変数の使用 説明 備考
ファイル 必須 使用可 CSV形式、またはTSV形式のファイルパスを入力します。

[参照]ボタンを押下するとファイルチューザが起動し、ファイルの選択ができます。
デリミタモード 必須 使用不可 デリミタの指定方法を選択します。
  • [一覧から選択]:(デフォルト)
    一覧からデリミタ文字を選択します。
  • [直接入力]:
    フィールドに直接デリミタ文字を入力します。
  • [文字コード入力]:
    フィールドに文字コードでデリミタ文字を入力します。
  • 選択した指定方法により、対応した入力フィールドに切り替わります。
一覧から選択/デリミタ文字 省略可 使用不可 デリミタ文字を選択します。
  • [半角カンマ]:(デフォルト)
    半角カンマ(,)を指定します。
  • [タブ]:
    タブを指定します。
  • [半角スペース]:
    半角スペース( )を指定します。
  • [半角セミコロン]:
    半角セミコロン(;)を指定します。
  • [半角スラッシュ]:
    半角スラッシュ(/)を指定します。
  • [半角バーティカルバー]:
    半角バーティカルバー(|)を指定します。
  • [デリミタモード][一覧から選択]を選択した場合、有効になります。
直接入力/デリミタ文字 省略可 使用可 デリミタ文字を1文字入力します。
  • [デリミタモード][直接入力]を選択した場合、有効になります。
  • ダブルクォーテーションをデリミタ文字に指定することはできません。
文字コード入力/デリミタ文字 省略可 使用可 文字コードを入力します。
入力した文字コードは[エンコード]で指定したエンコードで変換されます。

8進(接頭辞「0」<数字のゼロ>)、10進(接頭辞なし)、16進(接頭辞「0x」<数字のゼロとアルファベットのエックス>もしくは「#」)による入力が可能です。
パディングが複数のバイト列になる場合には、カンマで区切って入力します。例:0x10,0x13
  • [デリミタモード][文字コード入力]を選択した場合、有効になります。
  • 1文字に変換される文字コードを入力できます。
  • 改行コード、ダブルクォーテーションに変換される文字コードを指定することはできません。
列一覧 省略可 - 列を指定します。

各列は以下のボタンで操作することができます。
  • [追加]:
    列を追加します。
  • [上へ]:
    選択している列の順序を一つ上に上げます。
  • [下へ]:
    選択している列の順序を一つ下に下げます。
  • [削除]:
    列を削除します。
  • [列一覧]で設定した列数分だけデータを読み取ります。
  • [列一覧]で設定した列名がMapperのスキーマに表示されます。
列一覧/列名 必須 使用可 列名を入力します。

[列一覧の更新]プロパティアクションで[ファイル]で指定したファイルの1行目を列名として設定できます。
 
プロパティアクション
項目名 説明 備考
プレビュー プレビューアを起動して、[ファイル]で指定したファイルの内容を表示します。
  • 指定したファイルが存在しない場合、または[ファイル]に変数が設定されている場合は無効になります。
  • [エンコード]で指定したエンコードで表示されます。
  • ファイル内容の編集はできません。
  • プレビューアで表示できるファイルのサイズは最大1MBです。ファイルサイズが1MBを超える場合、ファイルの先頭から1MB分が表示されます。
列一覧の更新 [ファイル]で指定したファイルの1行目を列名として設定します。
  • 指定したファイルが存在しない場合、または[ファイル]に変数が設定されている場合は無効になります。
ファイルの一行目から列名を読み取り ファイルチューザでファイルを選択して、そのファイルの1行目を列名として設定します。  
ファイルから列数を読み取り ファイルチューザでファイルを選択して、そのファイルの列数を列名の列数として設定します。  
読み取り設定
項目名 必須/省略可 変数の使用 説明 備考
エンコード 必須 使用可 読み取るファイルのエンコードを選択または入力します。

入力する場合は、Java SE Runtime Environment 7でサポートされているエンコードを指定します。
詳細については、「Supported Encodings」(http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html)を参照してください。
最初の行は値として取得しない 省略可 使用不可 指定したファイルの1行目をデータとして扱うかどうかを選択します。
  • [チェックあり]:
    データとして扱いません。
  • [チェックなし]:(デフォルト)
    データとして扱います。
 
データ処理方式
項目名 必須/省略可 変数の使用 説明 備考
データ処理方式 必須 使用不可 データ処理方式を選択します。
  • [スクリプトの設定を使用する]:(デフォルト)
    スクリプトプロパティの大容量データ処理の設定をアダプタに使用します。
  • [大容量データ処理を行わない]:
    大容量データ処理を行いません。
  • [大容量データ処理を行う]:
    大容量データ処理を行います。
 
コメント
項目名 必須/省略可 変数の使用 説明 備考
コメント 省略可 使用不可 このアダプタの簡単な説明を記述することができます。
説明を記述すると、仕様書に反映させることができます。
 

スキーマ

入力スキーマ

ありません。

出力スキーマ

[列一覧]の設定により、カラム数が異なります。
スキーマ構造については、「テーブルモデル型のスキーマ」を参照してください。

Mapperでのスキーマ読み込み

スキーマは自動で読み込まれます。
詳細については、「スキーマ編集」を参照してください。

大容量データ処理

大容量データ処理に対応しています。

PSPでの使用について

PSPで使用できます。
PSPについては、「パラレルストリーミング処理」を参照してください。

使用できるコンポーネント変数

コンポーネント変数名 説明 備考
count 読み取ったデータの件数が格納されます。
  • デフォルト値はnullです。
  • PSPでは値が格納されません。
filePath 読み取り元のファイルのパスが格納されます。
  • デフォルト値はnullです。
  • PSPでは値が格納されません。
message_category エラー発生時、発生したエラーに対応するメッセージコードのカテゴリが格納されます。
  • デフォルト値はnullです。
message_code エラー発生時、発生したエラーに対応するメッセージコードのコードが格納されます。
  • デフォルト値はnullです。
message_level エラー発生時、発生したエラーに対応するメッセージコードの重要度が格納されます。
  • デフォルト値はnullです。
error_type エラー発生時、発生したエラーの種類が格納されます。
  • デフォルト値はnullです。
  • エラーの種類は、以下のような形式となります。
    例:「java.io.FileNotFoundException」
  • DataSpider Servistaのバージョンにより、格納される内容が変わる可能性があります。
error_message エラー発生時、発生したエラーのメッセージが格納されます。
  • デフォルト値はnullです。
  • DataSpider Servistaのバージョンにより、格納される内容が変わる可能性があります。
error_trace エラー発生時、発生したエラーのトレース情報が格納されます。
  • デフォルト値はnullです。
  • DataSpider Servistaのバージョンや実行するクライアントアプリケーションにより、格納される内容が変わる可能性があります。

nullと空文字について

仕様制限

主な例外

例外名 原因 対策
InvalidPropertyConfigurationException
<プロパティ名>が指定されていません。
[<プロパティ名>]が指定されていません。 [<プロパティ名>]を指定してください。
InvalidPropertyConfigurationException
不正なデリミタ文字が指定されています。
[デリミタ文字]に不正な文字が入力されています。 [デリミタ文字]に正しい文字を入力してください。
FileIsDirectoryException [ファイル]に入力されたパスがディレクトリです。 [ファイル]にはファイルパスを入力してください。
java.io.FileNotFoundException [ファイル]に指定されたファイルが存在しません。 [ファイル]を確認してください。
java.io.UnsupportedEncodingException [エンコード]にサポートされていないエンコードが指定されています。 Java SE Runtime Environment 7でサポートされているエンコードを指定してください。
詳細については、「Supported Encodings」(http://docs.oracle.com/javase/7/docs/technotes/guides/intl/encoding.doc.html)を参照してください。

Migration Kitの機能

本機能は、Migration Kitを適用した場合のみ有効になります。

プロパティ

互換性
項目名 必須/省略可 変数の使用 説明 備考
1.5形式のデータを使用 省略可 使用不可 結果データのスキーマの形式を選択します。
  • [チェックあり]:
    DataSpider 1.5形式のスキーマで結果データを作成します。
    出力スキーマについては、「1.5形式のスキーマ」を参照してください。
  • [チェックなし]:(デフォルト)
    DataSpider Servista 2.0以降のスキーマで結果データを作成します。
 
スキーマの種類 必須 使用不可 スキーマの種類を選択します。
  • [DEFAULT]:(デフォルト)
    通常のスキーマを使用します。
  • [COLUMN_NAME]:
    要素名の定義が可能となります。
  • [1.5形式のデータを使用]にチェックを入れた場合、有効になります。
カラム名定義 必須 使用不可 カラム名を表す要素の名前を指定する方法を選択します。
  • [automatic]:(デフォルト)
    1行目の列の値を要素名として使用します。
  • [manual]:
    プロパティで指定します。
  • [1.5形式のデータを使用]にチェックを入れた場合、有効になります。
列一覧(マニュアル定義) 省略可 - 列を指定します。

各列は以下のボタンで操作することができます。
  • [追加]:
    列を追加します。
  • [上へ]:
    選択している列の順序を一つ上に上げます。
  • [下へ]:
    選択している列の順序を一つ下に下げます。
  • [削除]:
    列を削除します。
  • [1.5形式のデータを使用]にチェックを入れた場合、有効になります。
列一覧/列名 必須 使用可 列名を入力します。ここで指定した名前が要素名になります。
  • [1.5形式のデータを使用]にチェックを入れた場合、有効になります。
XMLとして不正な文字を削除 省略可 使用不可 結果データ構築中にXMLとして不正な文字列が見つかった場合に自動的に削除するかどうかを選択します。
  • [チェックあり]:
    XML文書内の不正な文字列を削除します。
  • [チェックなし]:(デフォルト)
    XML文書内の不正な文字列を削除しません。
  • [1.5形式のデータを使用]にチェックを入れた場合、有効になります。

1.5形式のスキーマ

<?xml version="1.0" encoding="UTF-8"?>
<csvfile schematype="">
  <row>
    <column quotation=""/>
  </row>
</csvfile>