手机作为客户端,通过访问url地址向服务器端发送带有参数的 post 请求,但是没有参数名称。
在服务器端需要接受到这些参数,如下代码
StringBuffer info=new java.lang.StringBuffer();
InputStream in=request.getInputStream();
BufferedInputStream buf=new BufferedInputStream(in);
String query="";
byte[] buffer=new byte[1024];
int iRead;
while((iRead=buf.read(buffer))!=-1)
{
info.append(new String(buffer,0,iRead,"UTF-8"));
}
System.out.println("info=="+info);
这是我在服务端的接收代码,但是 info 打印出来的是乱码,求大侠指点.....
在服务器端需要接受到这些参数,如下代码
StringBuffer info=new java.lang.StringBuffer();
InputStream in=request.getInputStream();
BufferedInputStream buf=new BufferedInputStream(in);
String query="";
byte[] buffer=new byte[1024];
int iRead;
while((iRead=buf.read(buffer))!=-1)
{
info.append(new String(buffer,0,iRead,"UTF-8"));
}
System.out.println("info=="+info);
这是我在服务端的接收代码,但是 info 打印出来的是乱码,求大侠指点.....
System.out.println(Integer.toBinaryString(Byte.valueOf(i).intValue()).substring(24));
}//比如:String s="毛";
byte[] b=s.getBytes();
for(byte i:b){
System.out.println(Integer.toBinaryString(Byte.valueOf(i).intValue()).substring(24));
}应该输出:
11100110
10101111
10011011
这个是“毛”字的2进制utf8码,3个字节
InputStream is = request.getInputStream();
DataInputStream in = new DataInputStream(new BufferedInputStream(is));
//从二进制流中 读取一 Byte 并将其装换成 十六进制
int sum1 = in.readByte();
String firValue = Integer.toHexString(sum1);
System.out.println("第一个十六进制的值是:"+firValue);