Javaプログラミング基礎 演習問題

解答は

に提出しなさい。クラスファイル (〜.class) は提出しなくてよい。 提出には gFTP 等の ftp ソフトを用いること。

問題1

問題1-1 (Basic)

テキストファイルをコピーするプログラムを作成しなさい。 ファイル名は TextCopy.java とする。 コマンドラインから、コピー元ファイル名とコピー先ファイル名を受け取るようにしなさい。

$ java TextCopy コピー元ファイル名 コピー先ファイル名

問題1-2 (Standard)

コピーした行数を表示するようにしなさい。

問題1-3 (Advanced)

コピーした行数に加えて単語数を表示するようにしなさい。ただし、単語と単語の間には空白があるものとする (英語などが対象)。

問題2 (Advanced)

テキストファイルから指定した文字列を探し、その文字列が含まれている行を表示するプログラムを作成しなさい。ファイル名は TinyGrep.java とする。

$ java TinyGrep 探す文字列 探す先のファイル名

参考

FileReader は実行環境でデフォルトの文字コードを想定して読み込む。 そのため、プログラムを Linux で動作させた場合には EUC、 Windows で動作させた場合には Shift_JIS のファイルしか読み込むことができない。 文字コードを指定(EUC,Shift_JIS,ISO-2022-JP)あるいは自動判別(JISAutoDetect)して読み込む場合には FileReader のかわりに InputStreamReader と FileInputStream を用いる。 なお、 自動判別(JISAutoDetect)は Unicode(UTF-8, UTF-16)には対応していない。

reader = new InputStreamReader(new FileInputStream(ファイル名 ), "JISAutoDetect");