2013-08-07 42 views
-2

欢迎, 我有指定的格式像这样的文本文件:阅读从指定的字符串的txt文件到指定的字符串

"King": { 
    "name": "Jack", 
    "Age": "23", 
    "ID": "001", 
}, 

"Queen": { 
    "name": "Lory", 
    "Age": "19", 
    "ID": "002", 
    "Pass": "955", 
}, 

我怎么能读取{的“王” }, 和检查文字包含"Pass"或没有。

,以及如何我可以取代的King"Age",因为当我这样做,每一个字Age将被替换。

任何帮助,将不胜感激 &对不起我的小话。

+2

请先付出一些努力,人们会帮助改善您的代码,而不是为您写出代码。 –

+0

你在用什么语言?答案会稍有不同(如果有的话)...我同意bash – Sayse

+0

您是否尝试过使用JSON解析器为您完成所有这些工作? –

回答

3

Thas似乎是一个JSON文件,所以使用JSON解析器,如JSON.NET来加载文件,解析并修改它。

例如

(我们要争取一点,因为你的数据不具有“包含” {},所以我们加入他们,当我们分析它和我们删除它们时,我们连载)

' Adding a containing { } 
Dim parsed As JObject = JObject.Parse("{ " & json & " }") 
Dim king As JObject = DirectCast(parsed("King"), JObject) 

king("Age") = 30 

Dim pass As JToken 

If king.TryGetValue("Pass", pass) Then 
    ' has pass 
End If 

Dim json2 As String = JsonConvert.SerializeObject(parsed, Formatting.Indented) 

' Now we remove the first and last { } 
Dim ix As Integer = json2.IndexOf(ControlChars.Lf) + 1 
Dim lastix As Integer = json2.LastIndexOf(ControlChars.Cr) 

' The final text 
Dim json3 As String = json2.Substring(ix, lastix - ix) 
+0

非常有用,谢谢。 – Zaid