とっちゃん@nyanco! です。
今回はUiPathでテキストをファイルから読み込み後「文字列」から「数値」に変換する覚え書きです。
外部テキストファイル内のテキストをUiPathに読み込ませると、例えそれが半角数字だけであってもUiPathの中では「文字列」として扱われます。
「数値」として扱うには、型変換作業が必要となります。
やりたいこと
- 外部のテキストファイルの内容をUiPathに読み込ませたい
- 読み込ませたテキストをUiPathの中で「数値」として扱いたい
作成手順
読み込むテキストファイルを用意
今回はテストで「test.txt」というテキストファイルを作成します。
ディレクトリは今回作成するUiPathの「.xaml」と同階層に設置。
テキストエディタで開き、半角数字で「100」と入力して保存。
今回は「数値」に変換するのが目的なので、「数値」以外の文字を入力してもうまくいきません。
これでテキストファイルの準備はOKです。
テキストデータを格納する変数を作成
次に、読み込んだテキスト内容を一旦格納する入れ物、「変数」を作成します。
変数パネルの「変数の作成」から変数を新規で作成して、下記のように設定します。
- 名前:test
- 変数の型:String
- スコープ:test(デフォルトでOK)
【テキストをファイルから読み込み】でテキストを変数に格納する
新規プロジェクトをシーケンスで作成し、アクティビティ【テキストをファイルから読み込み】を追加して以下のように設定します。
- ファイル「ファイル名」:“test.txt”
- 出力「コンテンツ」:test
「コンテンツ」は先程作成した「変数」を指定します。
ちなみに「コンテンツ」欄にカーソルを置いた状態で「Ctrl」+「K」を押すと、新規変数作成ができるので覚えておくと作業効率があがります。
これでテキストファイル内のテキストが変数内に入りますが、このままだと「文字列:String型」となり、「数値:Int型」として扱えないので「数値:Int型」に変換して新たな変数に格納していきます。
「数値」に変換した数値を格納する変数を作成
新規で変数「test_int」を作成し「変数の型」を「Int32」としておきます。
【代入】で「文字列」を「数値」に変換
アクティビティ【代入】を追加して以下のように設定します。
- その他「右辺値(Value)」:Int32.Parse(test)
- その他「左辺値(To)」:test_int
Int32.Parse(変数名)で、「変数名」の型を「数値:Int型」に変換できます。
ちなみに「Parse(パーズ)」は「解析」という意味で、「プログラムで扱えるように解析する」というイメージで覚えておくと良いかと。
これで変数「test_int」には、テキストファイル「test.txt」内のテキスト「100」が「数値」として格納されているはずです。
おまけ:「数値」に変換されているか簡単な計算で検証
本当に「数値」として変換されているか、簡単な計算をして検証してみます。
計算結果を格納する変数作成と【代入】で計算
計算結果を格納する変数「output」を作成し、「変数の型」は「Int32」とします。
アクティビティ【代入】を追加して以下のように設定します。
- その他「右辺値(Value)」:test_int + 5
- その他「左辺値(To)」:output
「test_int + 5」は変数「test_int」に足し算で「5」を加えるという意味です。
【メッセージボックス】で計算結果を表示させる
アクティビティ【メッセージボックス】を追加して以下のように設定します。
- 入力「テキスト」:output
あとは「ファイルをデバッグ」をクリックして以下のようなウィンドウが出れば成功です!
100 + 5 =「105」でばっちり数値として計算できてますね!
ちなみにデバッグ中は画面左側で「変数」の変遷が表示されてるので分かりやすいと思います。
「”(ダブルクォーテーション)」で囲まれているのは「文字列(String)」の段階で、そこから「数値(Int32)」に変換されて「5」を足し算されて…といった具合に確認できます。
おわりに
テキストファイルのテキストをただ単に「文字列」として読み込むのは簡単ですが、「数値」として使うには一手間かかりますね。
でもやり方を覚えてしまえばなんてことないです!
本記事がどなたかの参考になれば幸いです。
今回は以上となります。
最後まで読んでいただきましてありがとうございました!
それではまた〜✧٩(ˊωˋ*)و✧
コメント