【发布时间】:2012-01-30 14:41:34
【问题描述】:
void readImage() throws IOException
{
socket = new Socket("upload.wikimedia.org", 80);
DataOutputStream bw = new DataOutputStream(new DataOutputStream(socket.getOutputStream()));
bw.writeBytes("GET /wikipedia/commons/8/80/Knut_IMG_8095.jpg HTTP/1.1\n");
bw.writeBytes("Host: wlab.cs.bilkent.edu.tr:80\n\n");
DataInputStream in = new DataInputStream(socket.getInputStream());
File file = new File("imgg.jpg");
file.createNewFile();
DataOutputStream dos = new DataOutputStream(new FileOutputStream(file));
int count;
byte[] buffer = new byte[8192];
while ((count = in.read(buffer)) > 0)
{
dos.write(buffer, 0, count);
dos.flush();
}
dos.close();
System.out.println("image transfer done");
socket.close();
}
-创建一个套接字 - 创建输出流 -请求包含图像的页面 - 将套接字读取到输入流 -写入文件
我正在尝试从套接字读取图像。 但它不起作用。
好像读过,图片打开了却看不到
问题出在哪里?
【问题讨论】:
-
你为什么不为此使用 RTP 类?
-
什么不起作用?有什么例外吗?堆栈跟踪是什么?你知道 Java 本身就支持 HTTP 吗?查看 URLConnection。
-
这是今天早上的第二个“从套接字读取图像”问题。