WEB应用之解析JSON格式数据

以下内容全部或部分转自或参考于网络。

20160731补充,genymotion模拟器链接本地服务器的Android端ip地址为10.0.3.2。

完成以下内容需要安装Apache 服务,安装方法见“Apache(阿帕奇)Web服务器的安装和使用 ”。

在C:\Apache24\htdocs 目录中新建一个test.json 的文件,加入如下JSON 格式的内容

{
    "T":[
        "T1",
        "T2",
        "T3",
        "T4"
    ]
}

使用模拟器测试,提示连接失败。

后在《第一行代码——Android》中找到了原因:

因"localhost "或"127.0.0.1"被Android模拟器(AVD)所使用,而“10.0.2.2 “对于模拟器来说就是电脑本机的 IP 地址。

再将原程序中的代码作相应调整后一切正常,完整代码如下:

    [Activity(Label = "TestJSON", MainLauncher = true , Icon = "@drawable/icon")]
    public class MainActivity : Activity
    {
        TextView tv;

        protected override void OnCreate( Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView( Resource.Layout .Main);

            tv = FindViewById< TextView>(Resource .Id.textView1);

            LoadXamarin();
        }

        public void LoadXamarin()
        {
            //测试用,本网址为C:\Apache24\htdocs下的test.json,使用模拟器时必须将localhost或127.0.0.1换成10.0.2.2
            string url = "http://10.0.2.2/test.json" ;//"http://localhost/test.json";

            //创建一个请求
            var httpReq = (HttpWebRequest )HttpWebRequest.Create( new Uri (url));

            //获取响应
            var httpRes = (HttpWebResponse )httpReq.GetResponse();

            //读取响应的字符串
            String text = new StreamReader(httpRes.GetResponseStream()).ReadToEnd();
            tv.Text = text;
        }
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值