一个关于ServletInputStream的中文问题,很有挑战性的!
环境:tomcat4.0.1
我用xmlhttp传输一段数据到jsp
接收时中文会乱码
源码如下:
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page import="java.io.*"%>
<%
//InputStream
InputStream sin = new BufferedInputStream(request.getInputStream());
ByteArrayOutputStream sout = new ByteArrayOutputStream();
int i=0;
int b=0;
while((b=sin.read())!=-1)
{
sout.write(b);
}
byte[] temp = sout.toByteArray();
String s_ok = new String(temp,"GB2312");
out.print(s_ok);
sout.close();
%>
-----------------------------------------------------------------
如果把源InputStream换作是FileInputStream读取一个文件
发送到客户端
中文完全没有乱码
why???