マルチメディア・プログラミング実習 後期 第7回

java.io とファイルの扱い

JDK1.1 の新しい入出力のクラスを利用してみましょう。 また、Fileクラスを通じてファイルシステムを操作するアプリケーションも 作ってみましょう。
準備:

ディレクトリ www の下の java2 に移動しなさい。


基本課題1:

「ディレクトリ内のファイルを表示する」

  1. Fileクラスの機能を活用して指定されたディレクトリ内のファイルの一覧を 表示するプログラムです。 ソース・プログラム LsCommand.java を作成しなさい。(教科書 p.203)
  2. javac コマンドでコンパイルしなさい。
  3. javaコマンドで Javaインタープリタ(仮想マシン)を呼び出し、 最初の引数にプログラムのクラス名、 その後に調べたいディレクトリ名を指定します。 (省略した場合はカレントディレクトリを調べる)

    
       java  LsCommand
       java  LsCommand  ../java
    
    

基本課題2:

「ファイルの内容を読み込み標準出力に表示」

    ファイルの内容を標準出力に出力するプログラムを作ります。 ソース・プログラム CatCommand.java を作成しなさい。

  1. javac コマンドでコンパイルをしなさい。

  2. java コマンドでプログラムを実行しなさい。

基本課題3:

「ファイルの内容を読み込み標準出力に表示(2)」

  1. BufferedReader を利用し上のプログラムを改良します。 バッファリングして入出力を行います。 ソース・プログラム CatCommand2.java を作成しなさい。

  2. javac コマンドでコンパイルをしなさい。

  3. java コマンドでプログラムを実行しなさい。

応用課題1:

「簡単なテキストエディタ」

テキストエディタを実現するために用意するクラスの説明 を読んだ上で、 6個のソースファイル FileLoader.java , FileLoaderException.java , FileSaver , FileSaverException.java , FileViewer.java , TextEditor.java を用意し、TextEditor.java をコンパイルしなさい。
javaコマンドで TextEditorを起動し、 ファイルの読み込み、保存の機能を確認しなさい。

応用課題2:

「テキストエディタを使いやすくする(1)」

上の TextEditor クラスを拡張し、さらに使いやすくなるように工夫してみましょう。 ファイルの保存の際に、既にファイルが存在している場合には警告メッセージの ウィンドウを表示し、上書きしてよいかどうか確認できるようにします。 そのために Dialog というポップアップウィンドウのクラスを利用します。
ソースファイル TextEditor2.java を用意し、コンパイルして実行してみなさい。 既に存在するファイル名を指定し、警告のウィンドウと確認のボタンの処理を 試してみなさい。

応用課題3:

「テキストエディタを使いやすくする(2)」

上の TextEditor2クラスを拡張し、さらに使いやすくなるように工夫してみましょう。 ファイルのロードの際に、いちいちキーボードから入力しなくてもすむようにします。 ファイル名が入力されていない場合には、 FileDialogのウィンドウを表示し、ファイル名を選択できるようにします。
ソースファイル TextEditor3.java を用意し、コンパイルして実行してみなさい。 ファイル名を指定しないでロードボタンをクリックし、 FileDialogからファイルを選択できることを確認しなさい。


実習の目次  今週の講義の内容