如何在 JScript .NET 4.0 中解析 JSON 数组响应



我有一个关于使用 JScript .NET 4.0 解析 JSON 数据的问题。我正在使用在Windows XP中运行的Visual Studio 2005来制作Windows表单(而不是网站)。

我的 RESTful API 调用以对象数组的形式返回 JSON 数据,例如:

[{"country": "USA", "state": "CA", "city": "San Francisco”}, {“country”: “USA”, “state”: “WA”, “city”: “Seattle”}, {"country": "USA", "state": “MA", "city": “Boston”}], 

而且我不知道如何将其解析为可用对象。我想我需要像序列化程序/反序列化程序这样的东西,比如DataContractJsonSerializer来做到这一点,请参阅MSDN,但在JScript .NET 4中实现它时遇到了困难。

我不确定你是否已经离开了这个,我可能需要更多信息来提供帮助,但我有一个集合脚本,作为一个库来做 jscript 中的常见事情。 一个常见的任务是我可能会从这些脚本之一调用某个 api 并取回 json。 为了解析它,我去了 json.org 并下载了json2.js。 一旦我得到它,我就可以打电话:

var data = JSON.parse(string_from_api)

就像我在现代浏览器上的javascript中一样。 我将 json2.js 包含在与库中所有其他脚本相同的目录中。 问题是 JScript.net(据我所知)没有现代浏览器中的 JSON 对象。 您必须自己添加它。 完成后,您可以利用它提供的 JSON 对象序列化和反序列化。

这就是我所做的!

var cfg = eval('('+File.ReadAllText(Directory.GetCurrentDirectory()+"\Config.json")+')');

Directory.GetCurrentDirectory()按路径应用

File.ReadAllText(...)是通过读取文件json

eval('('+ $$ +')')..评估..鑫达

最新更新