HttpURLConnection解析网络数据

来源:互联网 发布:unity3d如何制作ui界面 编辑:程序博客网 时间:2024/04/27 13:58

1.首先价绍一下他是java自带的网络请求数据的方法,必须在线程里执行。

<pre name="code" class="java">try {// 设置要访问地址URL url = new URL(path);// 打开连接,得到HttpURLConnection对象HttpURLConnection connection = (HttpURLConnection) url.openConnection();// 设置联网超时connection.setConnectTimeout(5000);// 设置请求方式connection.setRequestMethod("GET");//连接connection.connect();// 得到响应码int responseCode = connection.getResponseCode();// 如果响应码是200,代表请求成功if (responseCode == 200) {// 得到输入流,包含请求到的数据InputStream inputStream = connection.getInputStream();// 记录每一行读到的数据String s = "";// 追加流里的数据StringBuffer buffer = new StringBuffer();// 读出流里的数据BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));// 只要不等于null,流里就一直有数据,就要一直循环读取while ((s = bufferedReader.readLine()) != null) {buffer.append(s);}String data = buffer.toString();System.out.println(data);// 解析数据Gson gson = new Gson();Bean bean = gson.fromJson(data, Bean.class);// 子线程不能更新UI,通过handler发送到主线程Message msg = Message.obtain();msg.obj = bean;handler.sendMessage(msg);}} catch (MalformedURLException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}



0 0
原创粉丝点击