ダイアログ コントロールのコントロールを初期化後、DoModal メンバ関数を呼び出してダイアログ コントロールを表示し、パスやファイルを指定できるようにする。DoModal メンバ関数は、[OK] (IDOK) ボタン、または、[キャンセル] (IDCANCEL) ボタンのどちらが選択されたかを返す。
C++ の入出力用のクラスは一番基本に ios があり、ここから入力用のクラス istream と出力用のクラス ostream が派生し、更にこの 2 つから入出力用のクラス iostream が派生している。また istream, ostream, iostream の各々からファイル用のクラス ifstream, ofstream, fstream が派生している。
文字列ストリームは、内部文字ファイルに文字列の使用を許すストリームオブジェクトである。
文字列ストリームは入力と出力のバッファに非常に役に立つ。これらの型istringstreamとostringstreamはヘッダファイルsstreamに定義されている。( 詳しくはC++言語入門12章参照)
ファイル処理のプログラムを書く上で,よく使うものを挙げておく。
クラス | メンバ | 意味 |
ios | eof | ファイルの終わり |
fail | 重大な入出力エラーか、回復可能な入出力書式エラー | |
istream | getline | ストリームから一行取り出す |
ostream | write | 指定されたバイト数だけバッファからストリームに出力 |
ifstream | open | ファイルを開く |
close | ファイルを閉じる | |
ofstream | open | ファイルを開く |
close | ファイルを閉じる |
において、buf は文字列格納場所 (へのポインタ)、文字数は終端文字 NULL を含めての最大文字数である。(従って上のプログラムの場合には厳密には 79 文字しか対応できまない。) また改行文字 n はストリームから取り出されるが格納はされない。
getline の正式な構文は
であり、行の区切りとして、改行文字 n 以外の文字を指定することが可能である。
データ点の表示には,デバイスコンテキストのEllipse(楕円)関数を用いている。Ellipse関数は四角形の左上隅の点と右下隅の点を結ぶ楕円を描く。ここでは,原点の座標を(cx,cy)としているので,データ点(xs,ys)の表示は