なお、JDK1.3に対する英語のドキュメントはこちら。
22行目
(旧) in = sock.getInputStream();
(新) in = new BufferedReader(new InputStreamReader(sock.getInputStream()));
26行目 〜 29行目
(旧)
for(i=0; i<2; ) {
int c = in.read();
if (c=='\n') i++;
}
(新)
for(i=0; i<2; i++) {
// 行を読み捨てる
in.readLine();
}
java Pphttpd 8080のようにします。8080はこのプログラムが使用するポートの番号です。 このようにサーバを起動しておいて、Netscapeなどの Webブラウザで URLをhttp://XXX.XXX.XXX.XXX:8080/ と指定します。XXX.XXX.XXX.XXXは Pphttpdを実行させているマシンの IPアドレス(またはホスト名)ですが、 Webブラウザと Pphttpdを同じマシンで実行しているときは、 127.0.0.1と指定しても OKです。:の後の 8080はポート番号で、 Pphttpdを起動するときに与えた番号と同じにする必要があります。
「1行ずつ、入力を読み込むためには、 java.io.BufferedReaderクラスの readLineメソッドを使用すれば良い。
... // BufferedReaderの使用例
Socket socket = new Socket("stwww.eng.kagawa-u.ac.jp", 80);
// BufferedReaderの生成
BufferedReader instrm = new BufferedReader(new InputStreamReader(socket.getInputStream()));
...
// 一行読み込む。
String line = instrm.readLine();
...
ここに修正済の第 2回レポートがあります。
public static String substrReplace(String str, String str1, String str2) {
// str中に含まれる str1を str2に置換する。
// 例: substrReplace("conversation", "vers", "serv") => "conservation"
int i = str.indexOf(str1);
if (i==-1) {
return str;
} else {
return str.substring(0, i)+str2+
substrReplace(str.substring(i+str1.length()), str1, str2);
}
}
残った時間は、7章の問 7.3.2, 7.3.3, 7.3.4 を(Pphttpd.javaを参考にして)やってください。
残った時間は第 1回レポートをやってください。
s学籍番号という名前のフォルダを作成して、 作成した .java, .class, .htmlファイルを入れ、 \\stfile\Report\kagawa\2000\CompNet1\000525\に、 コピーしてください。
注意: