Post方式需要向网络传输一部分数据,同时具有输入流和输出流。
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn=(Button)findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//异步加载
new AsyncTask<String,Void,Void>(){
@Override
protected Void doInBackground(String... strings) {
try {
URL url=new URL(strings[0]);
HttpURLConnection connection=(HttpURLConnection)url.openConnection();//获取互联网连接
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");//设置请求方式
OutputStreamWriter osw=new OutputStreamWriter(connection.getOutputStream(),"utf-8");//输出流
BufferedWriter bw=new BufferedWriter(osw);//通过BufferedWriter可以写入字符串
bw.write("keyfrom=testdemoHttpGet&key=660196743&type=data&doctype=xml&version=1.1&q=good");
bw.flush();//强制输出
InputStream is=connection.getInputStream();//获取输入流
InputStreamReader isr=new InputStreamReader(is,"utf-8");//字节转字符,字符集是utf-8
BufferedReader bufferedReader=new BufferedReader(isr);//通过BufferedReader可以读取一行字符串
String line;
while ((line=bufferedReader.readLine())!=null){
Log.i("输出:",""+line);
}
bufferedReader.close();
isr.close();
is.close();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
//使用api的数据接口
}.execute(" http://fanyi.youdao.com/openapi.do ");
}
});
}
}