2015-01-13 84 views
-2

我试图找到解决方法来用C#解析JSON字符串。用C解析JSON字符串#

其实,我从一个文件中提取JSON字符串:

string json = r.ReadToEnd(); 

在这个JSON文件我有一个状态相关联的文件列表,像:

{"C:\workspace\folder\test\added.txt": "synced","C:\workspace\folder\test\pending.test": "pending"} 

我想加载此JSON并获取每个键/ val对。

但是,当我加载使用JSON:

JObject jsonVal = JObject.Parse(json); 

此行给我一个错误...

那么,是什么方法?我怎么做才能得到没有名字的每把钥匙?我想过这样的事情:

string val = (string)jsonVal[0]; 

编辑:使用Visual Studio,当我看看json的变种,Visual Studio中说我“字符串没有被JSON格式的” ...

你有一个想法?

预先感谢您;)

+4

它给你一个错误,你不知道为什么?我们不知道为什么!你应该在你的问题中包含这条消息。我们并不坐在你的电脑旁边看着你。另外,你是否通过[JSON Lint](http://jsonlint.com/)运行你的JSON字符串?它说你没有有效的JSON。如果JSON无效,则无法解析。 – mason

+3

您的JSON示例无效。反斜杠必须逃脱。 – thorn

回答

2
{ 
    "C:\\workspace\\folder\\test\\added.txt": "synced", 
    "C:\\workspace\\folder\\test\\pending.test": "pending" 
} 

你的JSON需要这些反斜杠逃脱。注意\\

http://json.org/