首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >简单客户端服务器程序不工作

简单客户端服务器程序不工作
EN

Stack Overflow用户
提问于 2013-11-06 08:18:24
回答 2查看 1.6K关注 0票数 0

服务器程序:

代码语言:javascript
运行
复制
import java.io.*;
import java.net.*;
public class server
{
        public static void main(String args[])
        {
                try
                {
                ServerSocket ss=new ServerSocket(2000);
                Socket s=ss.accept();
                BufferedReader br=new BufferedReader(new InputStreamReader(s.getInputStream()));
                String str;
                while((str=br.readLine())!=null)
                {
                        System.out.println(str);
                }
                }
                catch(Exception e)
                {
                        System.out.println(e);
                }
        }
}

客户程序:

代码语言:javascript
运行
复制
import java.net.*;
import java.io.*;
public class client
{
        public static void main(String args[])
        {
                try
                {
                Socket s=new Socket("127.0.0.1",2000);
                String str;
                BufferedWriter br=new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
                br.write("\nHello World\n");
                }
                catch(Exception e)
                {
                        System.out.println(e);
                }
        }
}

我所面临的问题是:

  1. 没有输出。
  2. 没有显示异常/错误。

如果我做错了什么,请解释一下。问题可能是在服务器读取时,客户端没有写任何东西。

EN

Stack Overflow用户

回答已采纳

发布于 2013-11-06 08:26:49

在客户端程序br.close();中写入流后关闭流

写入流后,必须关闭流或刷新流(br.flush()),因为当流关闭时,只能读取该流。I/O操作不能同时在同一流上执行。

两个套接字由相同的流连接,因此不能在该流上同时执行I/O操作。

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19807028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档