您的位置:首页 > 理论基础 > 计算机网络

HttpURLConnection请求后,返回数据出现乱码解决办法!

2012-03-15 10:38 661 查看
package org.tq.com;

import java.io.BufferedReader;

import java.io.DataOutputStream;

import java.io.InputStreamReader;

import java.net.HttpURLConnection;

import java.net.URL;

import java.net.URLEncoder;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

public class PostActivity extends Activity {

private Button but = null;

private EditText show = null;



private String baseUrl = "http://www.taaa.com/index.php";

HttpURLConnection urlConn = null;

URL url = null;



@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.main2);

but = (Button) this.findViewById(R.id.button2);

show = (EditText) this.findViewById(R.id.editText2);



but.setOnClickListener(new OnClickListener() {



@Override

public void onClick(View v) {

// TODO Auto-generated method stub

try {

url = new URL(baseUrl);

urlConn = (HttpURLConnection) url.openConnection();

urlConn.setDoInput(true); //设置输入流采用字节流

urlConn.setDoOutput(true); //设置输出流采用字节流

urlConn.setRequestMethod("POST");

urlConn.setUseCaches(false); //设置缓存

urlConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

urlConn.setRequestProperty("Charset", "utf-8");



urlConn.connect();



DataOutputStream dos = new DataOutputStream(urlConn.getOutputStream());

dos.writeBytes("tqpadmac="+URLEncoder.encode("B407F9D67C80", "utf-8"));

dos.writeBytes("tqpadver="+URLEncoder.encode("1", "utf-8"));

dos.flush();

dos.close();



//这句:new InputStreamReader(urlConn.getInputStream(), "gbk") 设置编码

BufferedReader br = new BufferedReader(new InputStreamReader(urlConn.getInputStream(),"gbk"));

String line = "";

String result = "";

while(null != (line=br.readLine())){

result += line;

}

System.out.println("接到的数据: " + result);

show.setText(result);

br.close();

urlConn.disconnect();

} catch (Exception e) {

e.printStackTrace();

}



}

});

}



}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: