2009-04-28 150 views
3

在IronPython 2.0.1中處理JSON的最佳方式是什麼?本地Python「標準庫」json看起來還沒有實現。IronPython - JSON選擇

如果我想使用Newtonsoft Json.NET庫,我該怎麼做?我可以將程序集添加到GAC,但我的其他選擇是什麼?

回答

5

此鏈接提供的補充refernces到.NET的DLL與IronPython的方式概述:Haibo Luo's weblog : IronPython: clr.AddReference

因此,舉例來說,如果你likle避免放置Json.NET庫在GAC中,你可以使用

import clr
clr.AddReferenceToFile("jsonnet.dll")

clr.AddReferenceToFileAndPath("C:\\libraries\\jsonnet.dll")

1
#list with data 
data=[] 
item={} 
item["name"]="joe's pizza" 
item["tel"] = "343-4333" 
data.append(item) 

#returns: [{'tel': '343-4333', 'name': "joe's pizza"}] 
#but not valid JSON 
print str(data) 

#returns [{"tel":"343-4333","name":"joe\u0027s pizza"}] 
import clr 
clr.AddReference('System.Web.Extensions') 
from System.Web.Script.Serialization import JavaScriptSerializer #since .net 3.5? 
json=JavaScriptSerializer().Serialize(data) 
print str(json)