我正在为复杂的应用程序编写模块,而我的模块应处理由Web服务器返回的json响应。因此,我的问题是关于如何解码此类文本:
\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u0444\u0430\u043c\u0438\u043b\u0438\u0438, \u0438\u043c\u0435\u043d\u0438 (\u043e\u0442\u0447\u0435\u0441\u0442\u0432\u0443
它是西里尔字母,Mozilla Firefox会按原样显示它。我该如何处理这些家伙?我正在使用Delphi 2010。
最佳答案
您可以使用Delphi 2010中随附的DBXJSON
单元
uses
DBXJSON;
const
JsonUt8 ='"\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u0444\u0430\u043c\u0438\u043b\u0438\u0438, \u0438\u043c\u0435\u043d\u0438 (\u043e\u0442\u0447\u0435\u0441\u0442\u0432\u0443"';
procedure TForm59.Button1Click(Sender: TObject);
var
LJSONValue: TJSONValue;
begin
LJSONValue:=TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(JsonUt8),0);
Edit1.Text:=LJSONValue.ToString;
end;