HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();
urlConn.connect();
DataOutputStream out = new DataOutputStream(urlConn.getOutputStream());
String content = "传递中文的问题";
out.writeBytes(content);
out.flush();
out.close();
urlConn.disconnect();
依照上面的方式传递中文,服务器得到的一定是一堆乱码,原因:out.writeBytes(content);该语句在转中文时候,已经变成乱码
public final void writeBytes(String s) throws IOException {
int len = s.length();
for (int i = 0 ; i < len ; i++) {
out.write((byte)s.charAt(i));
}
incCount(len);
}
因 为java里的char类型是16位的,一个char可以存储一个中文字符,在将其转换为 byte后高8位会丢失,这样就无法将中文字符完整的输出到输出流中。所以在可能有中文字符输出的地方最好先将其转换为字节数组,然后再通过write写 入流,目前尝试过这种方法:把上面链接代码中的out.writeBytes(content);替换为 out.write(content.getBytes());先把数据转成BYTE在写入流,执行成功,服务器接收正确的中文内容,
相关推荐
然而,当传输包含中文字符的数据时,由于字符编码的不一致,可能会导致乱码问题。 错误通常出现在两个主要环节:请求头的设置和数据的编码/解码。以下是一些常见问题及其解决方案: 1. **请求头的Content-Type设置...
- 传输数据时要考虑字符编码问题,确保客户端和服务器端的编码一致,避免乱码。 - 如果需要处理大型数据,考虑使用流式传输,而不是一次性加载到内存中。 总结,Java通过HttpURLConnection与Servlet通信涉及到...
在JSP中,我们可以通过Java Servlet API来创建HttpURLConnection对象,设置请求方法和参数,然后发送请求。 在处理跨服务器传输时,编码问题很重要。在这个例子中提到了`GBK编码`,这意味着在发送和接收数据时,...
Java URL 乱码问题在开发过程中常常困扰开发者,尤其是在处理包含中文字符的URL时。URL乱码通常是由于编码和解码过程中的不匹配所引起的。本文将深入探讨这个问题,并提供几种有效的解决方法。 首先,我们需要了解...
GET和POST主要用于客户端(如Android前端)与服务器之间的通信,而处理中文乱码问题则是一个额外的技术挑战。 GET方法是HTTP中最基础的请求类型,通常用于获取服务器上的资源。它将参数附加到URL中,以问号(?)...
Java默认使用ISO-8859-1编码,这可能导致中文乱码。解决方案是在读写文件名时指定正确的编码格式,如UTF-8。在发送HTTP请求时,确保设置合适的`Content-Type`,如`application/x-www-form-urlencoded; charset=UTF-8...
2. **编码兼容性**:当前代码默认使用`iso-8859-1`编码读取内容,但在实际应用中,应根据实际情况选择正确的字符集,以避免乱码问题。 3. **性能考量**:当处理大量或频繁的HTTP请求时,考虑使用连接池或其他并发...
例如,Utf8json Object Request用于防止中文数据传输过程中的乱码问题。 2.2 二进制数据传输 对于二进制数据,如图片和音频文件,系统通过HttpURLConnection进行传输。同时,利用Handler和Message在设备本地处理...
- 由于短信支持多种字符集,如7位ASCII、GSM 7位扩展、Unicode等,需要根据短信内容正确选择编码,避免乱码问题。 7. **测试与调试**: - 使用模拟器或真实设备进行测试,确保短信能正常发送和接收。 - 日志记录...
URL编码通常使用UTF-8,因此在读取响应时,确保使用正确的字符集解码,以避免乱码。 在实际开发中,通常会使用Apache HttpClient或OkHttp这样的库来替代URLConnection,因为它们提供了更高级的功能和更好的性能。...
Java的`BufferedReader`和`BufferedWriter`类在读写文件时会涉及到这些操作,你可以通过传递`Charset`对象给它们的构造函数来指定编码方式。 5. **字符编码问题**: 在处理不同编码格式的数据时,如果编码不匹配,...
2.3.1获取内容中文乱码 /** * 通过url获取网页内容, * 解决中文乱码问题 * @param httpUrl * @return */ public static String downloadPage(String httpUrl) { StringBuffer pageBuffer = new ...