- class TransClient
- {
- public static void main(String[] args) throws Exception
- {
- Socket s = new Socket("192.168.1.254",10005);
- //定义读取键盘数据的流对象。
- BufferedReader bufr =
- new BufferedReader(new InputStreamReader(System.in));
- //定义目的,将数据写入到socket输出流。发给服务端。
- //BufferedWriter bufOut =
- //new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
- PrintWriter out = new PrintWriter(s.getOutputStream(),true);
- //定义一个socket读取流,读取服务端返回的大写信息。
- BufferedReader bufIn =
- new BufferedReader(new InputStreamReader(s.getInputStream()));
- String line = null;
-
- while((line=bufr.readLine())!=null)
- {
- if("over".equals(line))
- break;
-
- out.println(line);
- // bufOut.write(line);
- // bufOut.newLine();
- // bufOut.flush();
- String str =bufIn.readLine();
- System.out.println("server:"+str);
-
- }
- bufr.close();
- s.close();
- }
- }
复制代码 毕老师视频 TCP传输
BufferedWriter bufOut = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
被下面的PrintWriter语句 替换
PrintWriter out = new PrintWriter(s.getOutputStream(),true);
然后
bufOut.write(line.toUpperCase());
bufOut.newLine();
bufOut.flush();
这三句被out.println(line.toUpperCase()); 替换。
我的疑问是 out.println(line.toUpperCase()); 中的println(String x);方法也是把字符串参数写入 PrintWriter 字符流 out中吗?
因为代替的那三句就是把大写后的字符串写到输出流中.
如果是的话,PrintWrite类中的 void println(String x);方法 和 void write(String x);方法 在使用中有什么区别呢
|