我在UTF-8中有一块JSON,在Google Chrome中看起来像这样(没有新行):
{"_links": {"self": {"href": "http://bla:8888/1/2/3/2257487e4a750cab"},
"it\u0119m": [{"href": "http://bla:8888/1/2/4/8f4fea003fe4c7fb284801d082de34a6"},
{"href": "http://bla:8888/1/2/4/c1213dd511c5427256c81f222e942c28"}]}}
首先,我删除了DBXJSON
的所有空格。然后我解析并打印出来,结果如下:
{"_links":{"self":{"href":"http://bla:8888/1/2/3/2257487e4a750cab"},
"itęm":[{"href":"http://bla:8888/1/2/4/8f4fea003fe4c7fb284801d082de34a6"},
{"href":"http://bla:8888/1/2/4/c1213dd511c5427256c81f222e942c28"}]}}
这就是我想要的,除了需要删除空格。
如果我使用相同的JSON字符串作为dwsJSON
的输入,则会发生有趣的事情:
{"_links":{"self":{"href":"http://bla:8888/1/2/3/2257487e4a750cab"},
"it\u0119m":[{"href":"4a6p://bla:8888/1/2/4/8f4fea003fe4c7fb284801d082de3/1."}
{"href":"c28p://bla:8888/1/2/4/c1213dd511c5427256c81f222e942\n\u0000\u0000"}]}}
不解释Unicode文字,\u0000
在更大的文件中到处都是,并且通常会发生某种混乱。
导致这种情况的原因以及我应该在哪里修复它? TdwsJSONValue.ParseString
需要UnicodeString
,我的输入是String
,但我不确定这有多重要(所有Delphi字符串类型都丢失了。)
答案 0 :(得分:2)
由于早期与unicode的斗争,我真的以为我做错了什么。但这只是一个错误。此时在SVN主干中不再存在这样的问题。