Y.Okamoto@Psy.JWU

コンソール入出力

 

 java.ioパッケージに用意されているクラスを用いるとコンソール入出力のようなことができる。図1は、その例を示すものである。

 

 

図1のプログラムは、リスト1のようになっている。

 

リスト1

 

1:            System.out.print("a = ");

2:            ss = kbd.readLine();

3:            a = Double.parseDouble(ss);

4:            System.out.print("b = ");

5:            ss = kbd.readLine();

6:            b = Double.parseDouble(ss);

7:            System.out.println("a + b = "+(a+b));

8:            System.out.println("a/b = "+(a/b));

9:            System.out.println("");

 

 

1行目の文の実行で、コンソール内に「a = 」と表示される。その後にキーボードから入力した文字列は2行目の文によって文字列型変数ssに設定される。関数readLineEnterキーが押されるまでの文字列を読み込むものである。読み込まれた文字列の表す数値は、関数parseDoubleによって文字列からその表す数値への変換が行われることにより得られる。4行目から6行目までは2番目の数値の読み込みを行うものである。読み込んだ数値に対してその和と商が算出されてコンソールに書き出される(7、8行目)。

上のプログラムは圧縮ファイルCkSysIO1.ZIPとしてまとめられている。ここをクリックしてダウンロードして解凍するとフォルダCkSysIO1にプロジェクトファイルCkSysIO1.jpxが格納される。CkSysIO1.jpxをダブルクリックなどによりJBuilderから開いて実行することができる。

実行時のフレームのGOボタンをクリックしたときにコンソール入出力用のメッセージペインが表示されていないときは、他のペインの下に隠れているので、上にあるペインの縁をマウスでドラッグするなどするとメッセージペインが見えてくる。メッセージペインは、マウスでドラッグして、図1のように変形・配置すると見やすい。また、GOボタンを押した後、メッセージペインにキーボードから文字を入力するときは、メッセージペインをクリックしてアクティブにする必要がある。メッセージペインがアクティブになると、Javaプログラムの実行時フレームが隠されるので、ボタンをクリックするために実行時フレームを表示させるときは、画面下にある実行時フレームのアイコンをクリックすると表示される。

 

 

コンソール入出力のためのコードを書き込んでいくと、図3のように注意マークが現れる。これは、これらのクラスがjava.ioに用意されているが、import文でその利用が宣言されていないからである。

 

 

図4のように、import java.io.*の文を書き加えると、図3の注意マークは消える。

 

 

プログラムを書き進めていくと、キーボードからの入力において何らかのエラーが発生したときの処理の記述が図5のように求められる。

 

 

エラーに対する処理はtry文とcatch文を用いて扱うことができる。     try文とcatch文を用いてエラーに対する処理を記述すると図6のように図5の注意マークは消える。

 

 

Catch文で、図5で示されている例外IOExceptionではなくExceptionが指定されているのは、入出力例外(エラー)以外にあらゆる例外に対応するためである。エラーの内容はeeprintlnによる出力で表示される。eee1でもよいが、既に他の例外を表すものとして用いられている変数、例えばe、とは異なる名前でなければならない。

 

Up