Java Socket浏览器输出问题

importjava.io.*;importjava.net.*;publicclassMain{/***@paramargs*/publicstaticvoidmain... import java.io.*;
import java.net.*;
public class Main {
/**
* @param args
*/
public static void main(String[] args) throws Exception{
ServerSocket service = new ServerSocket(18880);
Socket sock = service.accept();
OutputStream out = sock.getOutputStream();
BufferedReader br = new BufferedReader(new FileReader("G:\\Java\\MyEclipse\\Test\\src\\Test.html"));
String line = null;
while((line = br.readLine()) != null){
//Console输出
System.out.println(line);
//浏览器输出
out.write(line.getBytes());
}
out.close();
br.close();
sock.close();
service.close();
}
}

Test.html文件中随便输入两行

然后再浏览器中运行,但是没有输出内容,而网上看的视频是能输出内容的,这是怎么回事?
我是看一个视频的,他浏览器里输入http://(本机地址):18880 之后会显示Test.html中的内容
我在程序最后一行写一个System.out.println("finish");之后程序启动后,会一次在Console中输出Test.html文档中的内容,最后输出一个finish,这说明程序完全运行了吧。但是out.write(line.getBytes());在视频里是浏览器输出的,我浏览器没输出。
展开
 我来答
mohunk10
2013-07-25 · TA获得超过754个赞
知道小有建树答主
回答量:466
采纳率:100%
帮助的人:454万
展开全部
这应该是一个服务器端socket,必须提供客户端与之通信才可以。服务器端socket启动后,进程会阻塞到service.accept();这里来等待客户端请求。看代码应该是服务器端socket在收到客户端的请求后,把从文件流里读取的数据响应给客户端,就结束了。至于你说能在浏览器中运行,我不太明白。
更多追问追答
追问
我直接回答在问题补充了,请看上面~
追答
你客户端的代码如何写的?贴出来我看看。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式