详细分析Jsonstring的相关问题

原先的测试不全面,发觉class结构一复杂,反序列化时分析Json string出现了严重的效率问题。 多方求助也没有解决。 其间试了很多人的json实现(官方的两个,google到的一个,teddy的nbear里的)。

创新互联公司是一家集网站建设,准格尔企业网站建设,准格尔品牌网站建设,网站定制,准格尔网站建设报价,网络营销,网络优化,准格尔网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

 
 
 
  1. if ((b >= 0 && b <= 9) || b == . || b == - || b == +)       
  2.      {                 try                 {                   
  3.  return Convert.ToInt32(s);                 }               
  4.  catch (Exception e)                 {                   
  5.  string msg = e.Message;                 }               
  6.  try                 {                    
  7. return Convert.ToDouble(s, NumberFormatInfo.InvariantInfo);        
  8.         }                 catch (Exception e)                 {   
  9.                  string msg = e.Message;                 }             }      

都有这个问题。 后来,一点点排查,先从一个最简单的分析Json string开始,逐渐往里面加属性测试。 ***发觉当我加入 a:1.01 时速度很慢,而 a:1 时速度正常。 然后才定位到问题所在: 官方代码:

 
 
 
  1. class test
  2. {
  3.     var $var = 0;
  4.     function add(){
  5.       echo $var+10;
  6.     }
  7. }
  8. $unserialize_var = new test;
  9. $serializeserialize_var = serialize($unserialize_var);
  10. echo $serialize_var;
  11. $unserialize_var = null;
  12. $unserializeunserialize_var = unserialize($serialize_var);
  13. $unserialize_var->add();
  14. $arr = array
  15.        (
  16.           'Name'=>'Peter',
  17.           'Age'=>20
  18.        );
  19. $jsonencode = json_encode($arr);
  20. echo $jsonencode;

这段代码在分析Json string里面会有严重的效率问题。 应该是C#的异常机制不完善造成的! 在java里,利用异常做这种工作对效率没有任何影响,(当然,也不提倡这么写,偷懒的行为)。

 
 
 
  1. ''' 
  2.     ''' JSON 序列化。
  3.     ''' 
  4.     '''  name="Value">物件。
  5.     Public Shared Function JsonSerialize(ByVal Value As Object) As String
  6.         Dim oSerializer As System.Web.Script.Serialization.JavaScriptSerializer
  7.         oSerializer = New System.Web.Script.Serialization.JavaScriptSerializer()
  8.         Return oSerializer.Serialize(Value)
  9.     End Function
  10.     ''' 
  11.     ''' JSON 反序列化。
  12.     ''' 
  13.     '''  name="Text">JSON 字符串。
  14.     Public Shared Function JsonDeserialize(Of T)(ByVal Text As String) As T
  15.         Dim oSerializer As System.Web.Script.Serialization.JavaScriptSerializer
  16.         oSerializer = New System.Web.Script.Serialization.JavaScriptSerializer()
  17.         Return oSerializer.Deserialize(Of T)(Text)
  18.     End Function

标题名称:详细分析Jsonstring的相关问题
网站链接:http://www.shufengxianlan.com/qtweb/news17/225667.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联