pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(sk.getOutputStream())));
sk.getOutputStream()获得字节流
new OutputStreamWriter(sk.getOutputStream())由字节流转成字符流
new BufferedWriter(new OutputStreamWriter(sk.getOutputStream()))由字符流转成缓冲字符流
new PrintWriter(new BufferedWriter(new OutputStreamWriter(sk.getOutputStream())));最后构造成PrintWriter追问
new OutputStreamWriter(sk.getOutputStream())由字节流转成字符流
new BufferedWriter(new OutputStreamWriter(sk.getOutputStream()))由字符流转成缓冲字符流
new PrintWriter(new BufferedWriter(new OutputStreamWriter(sk.getOutputStream())));最后构造成PrintWriter追问
这样做有啥具体作用呢,从字节转到字符,又转到缓冲字符流
追答字节流输出的是字节
字符流输出的是字符
缓冲字符流可以把缓冲区中的字符一次性输出
温馨提示:答案为网友推荐,仅供参考
第1个回答 2012-12-29
直接查看API文档
Socket 对象的 getOutputStream();
OutputStreamWriter 对象的构造方法
BufferedWriter 对象的构造方法
PrintWriter 对象的构造方法
最终后调用PrintWriter 的 out方法输出内容,也就是对方发给你的数据
Socket 对象的 getOutputStream();
OutputStreamWriter 对象的构造方法
BufferedWriter 对象的构造方法
PrintWriter 对象的构造方法
最终后调用PrintWriter 的 out方法输出内容,也就是对方发给你的数据
第2个回答 2012-12-29
转换,从最内层,转到最外层
第3个回答 2012-12-29
从里面往外一层层解释,sk.getOutputStream()是干什么,之后OutputStreamWriter是干什么,一点点你就明白了。