• 検索結果がありません。

テキストファイルの入出力1

N/A
N/A
Protected

Academic year: 2021

シェア "テキストファイルの入出力1"

Copied!
6
0
0

読み込み中.... (全文を見る)

全文

(1)

テキストファイルの入出力1

0.今回の目的

前回までは、2回にわたって繰り返しについて学んできました。今回からテキストファイルの入出力 について学ぶことにします。

1.テキストファイルへの出力

1.1 テキストファイルについて テキストファイルとは、コンピュータで扱うことが出来るファイルの中で最も基本的なファイルで あり、どの様なOS でもサポートされているファイル形式です。Windows においては、「メモ帳」など で閲覧・編集出来るため、コンピュータによる処理結果を出力し、すぐ確認したい場合などに適して います。また、エクセルもテキストファイルの入出力に対応しているため、出力結果をエクセルに読 み込めば、即座に表やグラフ化することが可能です。 1.2 テキストファイルへの出力1 それでは、実際にテキストファイルを使用してみましょう。前回作成したプログラムをもとに、Fig. 8 – 1 に示す様にコントロールを追加します。追加するコンポーネントのリストは下記の通りです。 ・ラベル:Text プロパティを「出力ファイル名」に変更する。 ・テキストボックス:Name プロパティを「txb_out_fn」に変更する。 ・チェックボックス:Name プロパティを「chb_file_output」に変更し、Text プロパティを「テキ ストファイルへ出力する」に変更する。 ・セーブファイルダイアログ【Tips 248, p.391】(「ダイアログ」内):Name プロパティを 「save_F_dlg」に変更する。 SaveFileDialog(セーブファイルダイアログ)を追加して、名前 を「save_F_dlg」へ変更する 出力するファイルの名前を選択・ 表示するためのテキストボックス 「飽和蒸気圧の計算」ボタンがクリ ックされたときに、計算結果をテキ ストファイルへ出力するかどうかの 選択用チェックボックス

(2)

まず、出力ファイル名を指定できるようにします。出力ファイル名の指定には、セーブファイルダイ アログコントロールを使用します。セーブファイルダイアログコントロールは、「ダイアログ」ページ にありますので、これを追加して下さい。セーブファイルダイアログコントロールでは、Windows で 良く目にする「保存の為のウィンドウ」が使用されます。出力ファイル名は、セーブファイルダイア ログコントロールのFileName プロパティに保持されます。ユーザーが「保存」ボタンをクリックし たときだけ処理を実行するには、「キャンセルボタンがクリックされたときには処理を中断する」様に 記述します。ダイアログウィンドウでどのボタンがクリックされたかを識別するために、 「DialogResult 型」の変数を定義し、以下の様に記述します。 (DialogResult 型変数) = (ダイアログ用コンポーネント).ShowDialog(); if ((DialogResult 型変数)== DialogResult.Cancel)) { return; } (DialogResult 型変数)へは、ダイアログウィンドウで押されたボタンが代入されます。では、先ほど 追加したエディットコントロール(txb_out_fn)をダブルクリックしたとき「保存ダイアログ」を表示 し、「保存ボタン」がクリックされた場合にそのファイル名をtxb_out_fn に表示するように変更して みましょう。txb_out_fn の DoubleClick イベント(Click イベントではないことに注意)内に、以下の様 に記述して下さい。 次に、テキストファイルへの出力方法について見ていきましょう【Tips 238 内, p.374】。テキストファ イルへ出力するには、下記の手順で行います。 1.「new 演算子」によって StremWriter 型オブジェクトのインスタンスを作成す るとともに、ファイル名関連付ける 2.WriteLine により必要な情報をファイルへ書き込む【Tips 245, p.384】 (手順2 を必要な回数だけ繰り返す) 3.Close コマンドによって、ファイルを閉じる なお、ファイルを閉じ忘れると、ファイルが破損する可能性がありますので、ファイルへの出力処理 を記述する前に、まずは必ずClose を記述する様に習慣付けて下さい。それでは、実際に出力部分を 作成していきましょう。前回作成したClick イベントに Fig. 8 – 3 を追加します。 Fig. 8 – 2 出力ファイル名の指定 「キャンセルボタン」がクリッ クされた時は処理を中断する

(3)

Fig. 8 – 3 ファイルへの出力の為の設定をする なお、if 文の処理は、チェックボックスにチェックが入っていて、出力ファイル名が指定されていると きは ・txt_file に指定したファイル名を割り当てる ・temp_output_flag を true に設定する という事を意味しています。次に、ファイルへの出力部分を追加していきます。まず、for 文の前に Fig. 8 – 4 に示す部分を追加します。 Fig. 8 – 4 出力部分を記述する1

ここでは、もしtemp_output_flag が「true」なら、テキストファイルへ「T[K] Ps[Pa]」を書き込 みます。つぎに、for 文のブロック中に Fig. 8 – 5 に示す部分を追加します。 チェックボックスにチェックが入っていて、出 力ファイル名が指定されているときは ・txt_file に指定したファイル名を割り当てる ・temp_output_flag を true に設定する この部分を追加する 「テキストファイルへ出力する」にチェックが ついていない場合は、「null」(「無」の意味)を 代入して、変数「txt_file」の値を確定する ここから追加(2018.6.22) ここまで追加(2018.6.22)

ここから追加(2018.6.22)

ここまで追加(2018.6.22)

(4)

Fig. 8 – 5 出力部分を記述する 2

最後に、for 文のブロックの下(for 文のブロックの外)に、Fig. 8 – 6 に示す部分を追加します。

Fig. 8 – 6 ファイルを閉じるための記述を追加 コンパイルをしてエラーが無ければ実行してみて下さい。出力ファイル名は任意ですが、出力先は USB メモリーにしておいて下さい。実行したら、出力したファイルをエクセルで開いて下さい。正し く計算結果が出力されているでしょうか? この部分を追加する ここから追加(2018.6.22) ここまで追加(2018.6.22) ここから追加(2018.6.22) ここまで追加(2018.6.22) ここから追加(2018.6.22) ここまで追加(2018.6.22) この部分を追加する 【記述する場所に注意!】 For 文のブロック(中かっこ) の外側(下側)に書くこと!

(5)

2.今回のまとめ

今回は、テキストファイルへの出力方法に加えて、セーブファイルダイアログコントロールの使用 方法について学びました。これらは、実用的なアプリケーションの作成には必須ですから、しっかり と使用方法をマスターしましょう。それでは、今回のまとめを以下に示します。 【1】 セーブファイルダイアログコントロールは、出力するファイルの名前を指定するためのコント ロールであり、出力ファイル名は、FileName プロパティに保持される【Tips 248, p.391】。 また、「保存」ボタンがクリックされたときのみ処理を実行するには、以下の様に記述する。 (DialogResult 型変数) = (ダイアログ用コンポーネント).ShowDialog(); if ((DialogResult 型変数)== System.Windows.Forms.DialogResult.Cancel)) { return; } 【2】 テキストファイルへ出力する場合には、以下の手順で行う【Tips 238 内, p.374】 1.「new 演算子」によって StremWriter 型オブジェクトのインスタンスを作成す るとともに、ファイル名関連付ける 2.WriteLine により必要な情報をファイルへ書き込む【Tips 245, p.384】 (手順2 を必要な回数だけ繰り返す) 3.Close コマンドによって、ファイルを閉じる 【3】 ファイルの拡張子は「ChangeExtension」というコマンドによって変更できる。なお、 ChangeExtension の書式は以下の通り。 System.IO.Path.ChangeExtension( (もとのファイル名), (新しい拡張子) ) 【4】 ファイルへ文字列を 1 行出力するには、以下に示す Writeln 関数を用いる【Tips 245, p.384】

WriteLine((文字列));

(6)

なお、Visual C#の宿題は、そのままメールに添付して提出することはできません。 提出方法については、別紙「VisualC#編の課題提出方法について」を参照して下さい。 また、zip ファイル名は、下記にようにすること。 【zip ファイル名の例】 化学工学プログラミング_水田_20190628.zip

提出先メールアドレス:

kmizuta@cen.kagoshima-u.ac.jp

メールの題名:「化学工学プログラミング課題提出(氏名

_課題が出された日)」とすること

(題名が不適切だとメール振り分けの際に行方不明になることがあるため)

【次回のテキストについて】

事前にダウンロードの上、指定参考書なども見ながら予習しておくこと! (プログラムコードの記述まではしなくても良いが、目を通しておくことにより理解度向上に役立つ!) http://ecp.cen.kagoshima-u.ac.jp/group/tansou/text/CHE_pr/FileList_main.html 宿題 新しいプロジェクトを作成し、for ループを用いて 3 次関数の値を繰り返し計算し、テキスト ファイルへ出力せよ。なお、繰り返し回数はとし、各ステップにおいて、関数の計算に用いた値 (x の値)と 3 次関数の値をタブ区切りで結合し、テキストボックスへ表示するとともにファイル へ出力すること。 (ヒント) ・出力するファイル名の選択は、今回のプログラムと同様の方法で行う ・ボタンをクリックされたときの処理については今回のプログラムと同様の方法で行うことがで き、Antoine 式の部分のみ、3 次関数の式へと変更する 次に名前を入れる 課題が出された年月日(8 桁表記) (提出日ではないことに注意) 先頭は必ず 「化学工学プログラミング」 とする

Fig. 8 – 3    ファイルへの出力の為の設定をする  なお、if 文の処理は、チェックボックスにチェックが入っていて、出力ファイル名が指定されていると きは  ・txt_file に指定したファイル名を割り当てる  ・temp_output_flag を true に設定する  という事を意味しています。次に、ファイルへの出力部分を追加していきます。まず、for 文の前に Fig
Fig. 8 – 5    出力部分を記述する 2

参照

関連したドキュメント

SD カードが装置に挿入されている場合に表示され ます。 SD カードを取り出す場合はこの項目を選択 します。「 SD

納付日の指定を行った場合は、指定した日の前日までに預貯金口座の残

AUTO : 出力先機器の EDID に従います。. DVI :

また、JR東日本パス (本券) を駅の指定席券売機に

Nintendo Switchでは引き続きハードウェア・ソフトウェアの魅力をお伝えし、これまでの販売の勢いを高い水準

Lane and Bands Table と同様に、Volume Table と Lane Statistics Table も Excel 形式や CSV

サンプル 入力列 A、B、C、D のいずれかに指定した値「東京」が含まれている場合、「含む判定」フラグに True を

パキロビッドパックを処方入力の上、 F8特殊指示 →「(治)」 の列に 「1:する」 を入力して F9更新 を押下してください。.. 備考欄に「治」と登録されます。