hashtable 转 json

zhuan:https://www.cnblogs.com/sntetwt/p/3500740.html

代码如下:

ArrayList eventList = new ArrayList();
            
            for (int i = 0; i < 3;i++ )
            {
                Hashtable ht = new Hashtable();
                ht.Add("eventid",i+1);
                ht.Add("eventname","圣诞节");
                ht.Add("eventdate","2012-12-25");
                ht.Add("eventlocation","公司会议中心");
                eventList.Add(ht);
            }
            JavaScriptSerializer ser = new JavaScriptSerializer();
            String jsonStr=ser.Serialize(eventList);
            Response.Write(jsonStr);

 

 

查看页面,可以看到返回的结果是JSON格式的数据。实际上是一个数组,数组里面每项是一个json对象。

[{"eventdate":"2012-12-25","eventlocation":"公司会议中心","eventname":"圣诞节","eventid":1},{"eventdate":"2012-12-25","eventlocation":"公司会议中心","eventname":"圣诞节","eventid":2},{"eventdate":"2012-12-25","eventlocation":"公司会议中心","eventname":"圣诞节","eventid":3}]

我们可以通过这个网址验证生成的json是否正确。http://jsonlint.com/

但是我们需要注意的是,hashtable在存放数据时是无序的,所以数据并不是按照我们插入的先后顺序显示的。我们可能期望的数据格式是:

{"eventid":1","eventname":"圣诞节",eventdate":"2012-12-25","eventlocation":"公司会议中心"}

但是我们查看我们的结果不是这样的,但是数据返回给前端之后,还是要通过JSON.parse()方法转换为json对象,所以不按照特定的顺序,对我们开发不影响。

数据在HTTP协议上传输都是使用二级制流,所以数据到达客户端,需要通过JSON.parse()。我的项目是Windows8

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章