package com.example.rikao1;
import android.annotation.SuppressLint;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import java.io .BufferedReader;
import java.io .IOException;
import java.io .InputStream;
import java.io .InputStreamReader;
import java.io .OutputStream;
import java.net .HttpURLConnection;
import java.net .MalformedURLException;
import java.net .URL;
import java.net .URLConnection;
public class MainActivity extends AppCompatActivity {
private Button bt;
private TextView page;
String murl="http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName ";
public Handler mHandler=new Handler(){
@Override
public void handleMessage(Message msg) {
int what = msg.what;
switch (what){
case 1:
String str = (String) msg.obj;
page.setText(str);
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt = findViewById(R.id.bt
);
page = findViewById(R.id.page);
onclick();
}
private void onclick() {
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new Thread(new Runnable() {
@Override
public void run() {
try {
URL url=new URL(murl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestMethod("POST");
OutputStream outputStream = connection.getOutputStream();
String canshu="theCityName=北京";
outputStream.write(canshu.getBytes());
if(connection.getResponseCode() ==200) {
InputStream stream = connection.getInputStream();
String s = getInputStr(stream);
Message msg = new Message();
msg.what = 1;
msg.obj = s;
mHandler.sendMessage(msg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}).start();
}
});
}
private String getInputStr(InputStream stream) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(stream));
StringBuffer sb=new StringBuffer();
String s;
while ((s=br.readLine())!=null){
sb.append(s);
}
return sb.toString();
}
}
03-10
6700
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
07-28
07-28
07-28
07-28
07-28