<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.g160628_android_y230_jiexixml.MainActivity">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="获取xml"
android:onClick="getxml"
/>
</LinearLayout>
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.i("test","dwdw");
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void getxml(View view){
new mytask().execute();
}
class mytask extends AsyncTask{
@Override
protected Object doInBackground(Object[] params) {
//获取xml网路数据
String path="http://193.168.1.76:8080/students.xml";
try {
URL url=new URL(path);
HttpURLConnection httpURLConnection= (HttpURLConnection) url.openConnection();
//设置请求方式
httpURLConnection.setRequestMethod("GET");
//设置超时的时间
httpURLConnection.setConnectTimeout(5000);
//获取结果码
int code= httpURLConnection.getResponseCode();
if(code==200){
//获取数据
InputStream is=httpURLConnection.getInputStream();
int len=0;
byte []bs=new byte[1024];
StringBuffer stringBuffer=new StringBuffer();
while((len=is.read())!=-1){
String s=new String(bs,0,len);
stringBuffer.append(s);
Log.i("test",stringBuffer.toString());
is.close();
}
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Object o) {
super.onPostExecute(o);
}
}
}