はじめに
blueprismには「Utility - File Management」VBO内に「Get CSV Text As Collection」オブジェクトがあります。
これを使用すると下記のようにCSVファイルの中身をコレクションアイテムに格納する事ができます。
しかし、Webからダウンロードしたcsvファイルをコレクションに格納する場合、
そのcsvファイルがS-JIS以外の文字コードですと、(オブジェクトで文字コードの指定が出来ないため)文字化けしてしまうのです・・・
そこで今回は、blueprismDXからダウンロード出来る「Utility - File Management - JP」を使用して文字化けせずにコレクションへ格納する方法を解説します。
用意する環境
Blueprism 6.7
使用するビジネスオブジェクト
Utility - File Management - JP
使用するファイル
文字コードをUTF-8に設定したcsvファイル(あえて文字化けを起こすため)
セットアップ
1.BlueprismDXから「Utility - File Management - JP」をダウンロード
2.Blueprismにインポートする
使い方
新規プロセス作成
文字化け処理をするため、新規でプロセスを作成します。
今回は、プロセス名を「文字化け処理」にしました。
文字化け処理をする前と後が分かるよう最初のステージに「Utility - File Management - JP」オブジェクト内のアクション「CSVテキストをコレクションとして取得」をセットして一度コレクションに格納します
実行するとこんな感じ
ばっちり文字化けしていますね・・・・・・
1.文字化け処理の対象となるCSVファイルからテキストをすべて読み取る
ここでは「Utility - File Management - JP」オブジェクト内のアクション「ファイルからすべてのテキストを読み取る」を選んでください。
実行すると下記のように文字化けすることなくデータアイテムに格納されます
下記は「ファイルからすべてのテキストを読み取る」アクションのコードステージの中身です。
StreamReader
を File_Name
引数だけでインスタンス化していますが、StreamReaderのドキュメント を見ると、UTF-8 エンコードが既定値のようです。そのため文字化けせずに読み取れるのですね。
(これと同じアクションに「ファイルからすべてのテキストを読み取る - 文字コード指定」もあります)
2.1の処理で読み取ったテキストを文字コード指定でファイルに書き込む
3.2で作成したcsvファイルをコレクションアイテムに格納する
ファイルパスは先ほど作成したテキストファイルを指定
今回、ヘッダーはTrueに設定しておきます。