Socket的getOutputStream()方法是如何工作的?

4
  { Socket s = new Socket("xxx.xx.xx.xx",10004);

    BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));

    PrintWriter out = new PrintWriter(s.getOutputStream(),true);

    BufferedReader bufIn  = new BufferedReader(new InputStreamReader(s.getInputStream()));

    String line = null;     
    while((line=bufr.readLine())!=null){
         if("over".equals(line))
             break;

         out.println(line);

         String upperStr = bufIn.readLine();
         System.out.println(upperStr);
    }

    s.close();}

那么out.println(line);的意思是1.输入的字符串将出现在屏幕上,2.同时内容将发送到服务器套接字?谢谢。

1个回答

4

你的变量out是一个PrintWriter,但这并不意味着它会在屏幕上打印出来。在这种情况下,你给它的是一个套接字的输出流,因此它将向套接字打印一行。如果你想让它也显示在屏幕上,你还需要调用类似于System.out.println(line)的方法。


我明白了!它是 PrintWriter.println()。我有点把它和 System.out.println() 搞混了。非常感谢 :) 这是我第一次在这里提问,我不知道如何给你一些声望...... 我正在努力。 - Bowen Li
当然,不用客气。别忘了在stackoverflow上接受你认为最好的答案。欢迎来到SO :) - akaIDIOT

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接