zoukankan      html  css  js  c++  java
  • 另一个http实例

    HttpActivity.java

    package src.com;

    import java.io.IOException;
    import java.io.UnsupportedEncodingException;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;

    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.ClientProtocolException;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpGet;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.message.BasicNameValuePair;
    import org.apache.http.protocol.HTTP;
    import org.apache.http.util.EntityUtils;

    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.TextView;

    public class HttpActivity extends Activity {

    private Button mButton1, mButton2;
    private TextView mTextView1;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    mButton1 = (Button) findViewById(R.id.myButton1);
    mButton2 = (Button) findViewById(R.id.myButton2);
    mTextView1 = (TextView) findViewById(R.id.myTextView1);

    mButton1.setOnClickListener(new Button.OnClickListener(){

    @Override
    public void onClick(View v) {
    String uriAPI = "http://www.sina.com";

    HttpPost httpRequest = new HttpPost(uriAPI);
    List<NameValuePair> params = new ArrayList<NameValuePair>();
    params.add(new BasicNameValuePair("str", "post string"));
    try{
    httpRequest.setEntity(new UrlEncodedFormEntity(params,
    HTTP.UTF_8));
    HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);

    if(httpResponse.getStatusLine().getStatusCode() == 200 ){
    String strResult = EntityUtils.toString(httpResponse.getEntity());
    mTextView1.setText(strResult);
    }else{
    mTextView1.setText("Error Response: "
    + httpResponse.getStatusLine().toString());
    }
    }catch(ClientProtocolException e){
    mTextView1.setText(e.getMessage().toString());
    e.printStackTrace();
    } catch (IOException e) {
    mTextView1.setText(e.getMessage().toString());
    e.printStackTrace();
    } catch (Exception e) {
    mTextView1.setText(e.getMessage().toString());
    e.printStackTrace();
    }
    }

    });

    mButton2.setOnClickListener(new Button.OnClickListener(){

    @Override
    public void onClick(View v) {
    String uriAPI = "http://www.sina.com";

    HttpGet httpRequest = new HttpGet(uriAPI);

    try{
    HttpResponse httpResponse = new DefaultHttpClient().execute(httpRequest);

    if(httpResponse.getStatusLine().getStatusCode() == 200){
    String strResult = EntityUtils.toString(httpResponse.getEntity());
    strResult = eregi_replace("(\r\n|\r|\n|\n\r)","",strResult);
    mTextView1.setText(strResult);
    }else{
    mTextView1.setText("Error Response: "
    + httpResponse.getStatusLine().toString());
    }
    }catch(ClientProtocolException e){
    mTextView1.setText(e.getMessage().toString());
    e.printStackTrace();
    } catch (IOException e) {
    mTextView1.setText(e.getMessage().toString());
    e.printStackTrace();
    } catch (Exception e) {
    mTextView1.setText(e.getMessage().toString());
    e.printStackTrace();
    }
    }
    });
    }

    public String eregi_replace(String strFrom,String strTo,
    String strTarget) {
    String strPattern = "(?i)" + strFrom;
    Pattern p = Pattern.compile(strPattern);
    Matcher m = p.matcher(strTarget);
    if(m.find()){
    return strTarget.replaceAll(strFrom, strTo);
    }else{
    return strTarget;
    }
    }
    }

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="src.com"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="7" />

    <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
    android:name=".HttpActivity"
    android:label="@string/app_name" >
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />

    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    </application>

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
    <uses-permission android:name="android.permission.INSTALL_PACKAGES" />"

    </manifest>

    main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:background="@drawable/white" >

    <TextView
    android:id="@+id/myTextView1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/title" />
    <Button
    android:id="@+id/myButton1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/str_button1" />
    <Button
    android:id="@+id/myButton2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/str_button2" />"

    </LinearLayout>

  • 相关阅读:
    Linux基础网络设置
    CentOS安装
    一.Linux常用命令
    C# 的 ListView 中 多个 Items 的 批量移动方法
    用 Directory.GetFiles 过滤多种类型的文件
    Visual Studio 返回上次编辑位置的快捷键
    C# 的 DataGripView 在大数据时,如何加速?
    webapi和mvc 路由详解
    C# 实体类和DataTable相互转换
    WinForm的DataGridView 下拉滚动条消失
  • 原文地址:https://www.cnblogs.com/xingmeng/p/2420851.html
Copyright © 2011-2022 走看看