java socket通信中汉字乱码问题

2022-09-15 13:30:39 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

最近刚开始接触Java网络编程,利用java的socket进行服务端与客户端之间的信息传递十分方便。

其socket通过一对IO流进行数据传递。

当本地要发送信息时,只需要在socket的outputStream中写入数据;

当本地要接受信息时,只需要用socket的inputStream中读取数据;

一般会用PrintWriter和BufferReader包装IO流方便写入和读取。

但是在实践中发现传输和接受中文的时候会出现乱码,可以在包装时指定UTF-8编码解决问题:

代码语言:javascript复制
PrintWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF-8"),true);
代码语言:javascript复制
BufferedReader(new InputStreamReader(socket.getInputStream(),"UTF-8"));

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/159150.html原文链接:https://javaforall.cn

0 人点赞