【发布时间】:2014-04-21 15:28:29
【问题描述】:
我在我的学校得到了这个培训任务,它说:在“SimpleClient”中进行更改,以便它向命令行上给出的地址发出 GET 请求,并将响应的内容存储到磁盘上的文件中。
import java.net.*;
import java.io.*;
public class SimpleClient {
public static void main(String[] args) {
try {
Socket con = new Socket(args[0], Integer.parseInt(args[1]));
PrintStream out = new PrintStream(con.getOutputStream());
out.print(args[2]);
out.write(0); // mark end of message
out.flush();
InputStreamReader in = new InputStreamReader(con.getInputStream());
int c;
while ((c = in.read())!=-1)
System.out.print((char)c);
con.close();
} catch (IOException e) {
System.err.println(e);
}
}
}
据我所知,Socket 的“con”实例应该通过端口号(args[1])与主机(args[0] 例如 www.google.com)建立连接。然后就做了一个PrintStream“out”,但是out.print(args[2])和out.write(0)的作用是什么?我不完全了解该程序,因此如果有人可以向我解释它并告诉我应该更改哪些内容以使其正常工作,我将不胜感激。
【问题讨论】:
标签: java http request httprequest