苏飞论坛

标题: JSON分割 [打印本页]

作者: 记忆    时间: 2013-1-18 15:55
标题: JSON分割
可以实现这种分割吗

作者: 站长苏飞    时间: 2013-1-18 16:13
我这里有一个转成对象列表的,建议你使用这种方法
这个可以转成这样的
[code=csharp]  private void Form1_Load(object sender, EventArgs e)
        {
            string _JsonText = "[{\"id\":2,\"name\":\"perkysu\"},{\"id\":3,\"name\":\"123456\"}]";

            List<Test> _Test = new List<Test>();
            DataContractJsonSerializer _Json = new DataContractJsonSerializer(_Test.GetType());
            byte[] _Using = System.Text.Encoding.UTF8.GetBytes(_JsonText);
            System.IO.MemoryStream _MemoryStream = new System.IO.MemoryStream(_Using);
            _MemoryStream.Position = 0;

            _Test = (List<Test>)_Json.ReadObject(_MemoryStream);
        }[/code]
Text类
[code=csharp] public class Test
    {
        public string id { get; set; }
        public string name { get; set; }
    }[/code]

作者: 记忆    时间: 2013-1-18 16:41
admin 发表于 2013-1-18 16:13
我这里有一个转成对象列表的,建议你使用这种方法
这个可以转成这样的

老大,用你的方法,得到的数组值都是空值啊,什么原因,是不是我的jSON格式不正确啊,还是
作者: 站长苏飞    时间: 2013-1-18 17:27
记忆 发表于 2013-1-18 16:41
老大,用你的方法,得到的数组值都是空值啊,什么原因,是不是我的jSON格式不正确啊,还是

你的Json格式 是什么,就要把那个Test的类修改成什么格式的,否则是没有数据的
作者: 站长苏飞    时间: 2013-1-18 17:27
你打出来Jsion数据我看看
作者: 记忆    时间: 2013-1-18 21:42
admin 发表于 2013-1-18 17:27
你打出来Jsion数据我看看

你看看老大

作者: 站长苏飞    时间: 2013-1-19 06:11
tes类呢?直接用我的肯定不对,我写的是按你帖子上格式来的,结果你忽悠我,哈哈格式不一样修改一下类就好了,别发图片发代码,还能帮你调试,发图那个会帮你调试'累不起,哈哈
作者: 记忆    时间: 2013-1-19 07:56
admin 发表于 2013-1-19 06:11
tes类呢?直接用我的肯定不对,我写的是按你帖子上格式来的,结果你忽悠我,哈哈格式不一样修改一下类就好了 ...

谢谢老大,这么早回复我,太感动了
  1. if (System.Web.HttpContext.Current.Request.Cookies["cookieUser"] != null)
  2.             {
  3.                 try
  4.                 {
  5.                
  6.                     string cookieValue = System.Web.HttpContext.Current.Request.Cookies["cookieProductID"].Value.ToString();
  7.                     Encoding stre = Encoding.GetEncoding("UTF-8");
  8.                     string cookie = System.Web.HttpUtility.UrlDecode(cookieValue, stre);

  9.                     Response.Write("<script>alert('" + cookie + "');</script>");

  10.                     string _JsonText = cookie;
  11.                     StringBuilder sb = new StringBuilder();
  12.                     List<Test> _Test = new List<Test>();
  13.                     DataContractJsonSerializer _Json = new DataContractJsonSerializer(_Test.GetType());
  14.                     byte[] _Using = System.Text.Encoding.UTF8.GetBytes(_JsonText);
  15.                     System.IO.MemoryStream _MemoryStream = new System.IO.MemoryStream(_Using);
  16.                     _MemoryStream.Position = 0;
  17.                     _Test = (List<Test>)_Json.ReadObject(_MemoryStream);
  18.            
  19.                 }
  20.                 catch (Exception ex)
  21.                 {
  22.                    throw(ex);
  23.                 }
  24.             }
  25.         }
复制代码
test类:
  1. public  class Test
  2.     {
  3.        public Test()
  4.        {
  5.        }
  6.        public string id { get; set; }
  7.        public string num { get; set; }
  8.     }
复制代码

作者: Koson    时间: 2013-1-19 08:21
你不是都使用了Newtonsoft.dll嘛?这个可以将你的json string convert to JObject(JAyyay)。
作者: Koson    时间: 2013-1-19 08:23
错了,是JArray。
作者: 记忆    时间: 2013-1-19 09:07
{:soso_e149:}
作者: 记忆    时间: 2013-1-22 11:25
本帖最后由 记忆 于 2013-1-22 12:19 编辑

大家如有类似问题,请参考http://www.cnblogs.com/txw1958/a ... 01/csharp-json.html
作者: 站长苏飞    时间: 2013-1-22 11:44
记忆 发表于 2013-1-22 11:25
大家如有类似问题,请参考http://www.cnblogs.com/txw1958/archive/2012/08/01/csharp-json.html

你的连接有问题啊
作者: 记忆    时间: 2013-1-22 12:20
admin 发表于 2013-1-22 11:44
你的连接有问题啊

刚才也不知道咋的,现在可以了




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4