我有这个简单的HTML加载我在Chrome中加载它时的方式。
<body>
<div><h1>Welcome to my webpage!</h1></div>
<div>This page is being hosted on the local machine.</div>
<div>Now, here's a picture of a cat. Please enjoy.</div>
<img src="cat.jpg" alt="Business Cat" width="800" height="600"/>
</body>
当我通过Java中的套接字传递它时,我总是得到一个破碎的图像。我无法弄清楚原因,因为我只是通过套接字传递字节。
File index = new File("index.html");
byte[] bytes = new byte[16 * 1024];
InputStream in = new FileInputStream(index);
while (true)
{
int read = in.read(bytes);
if (read < 0)
break;
out.write(bytes, 0, read);
}
out.flush();
out.close();
图像文件&#34; cat.jpg&#34;与&#34; index.html&#34;位于同一目录中。我错过了什么?
答案 0 :(得分:0)
我认为问题在于它发送了另一个http请求。您应该提供示例:127.0.0.1/index.html以显示您的index.html文件,而127.0.0.1/cat.jpg应该返回您的图片。 但我不确定你将如何解析java中的jpg文件。 但如果你是铬,你去检查;然后你去网络。如果您重新加载,您将看到您的图片请求未决,或者您返回的正确信息,具体取决于您实施我们处理http请求的方式。