JsonParser库中没有
我需要在Inno设置中解析JSON布尔值。我试着修改了"如何在Inno Setup中解析JSON字符串?"中的代码?解析布尔值如下:
function FindJsonBoolean(
Output: TJsonParserOutput; Parent: TJsonObject; Key: TJsonString;
var Bool: TJsonBool): Boolean;
var
JsonValue: TJsonValue;
begin
Result :=
FindJsonValue(Output, Parent, Key, JsonValue) and
(JsonValue.Kind = JVKBoolean);
if Result then
begin
Bool := Output.Boolean[JsonValue.Index];
end;
end;
但它无法使用进行编译
未知类型"TJsonBool">
TJsonBool
。有:
TJsonWord = (JWUnknown, JWTrue, JWFalse, JWNull);
使用类似的方法,将TheWord
与JWTrue
/JWFalse
进行比较。
function FindJsonWord(
Output: TJsonParserOutput; Parent: TJsonObject; Key: TJsonString;
var TheWord: TJsonWord): Boolean;
var
JsonValue: TJsonValue;
begin
Result :=
FindJsonValue(Output, Parent, Key, JsonValue) and
(JsonValue.Kind = JVKWord);
if Result then
begin
TheWord := Output.Words[JsonValue.Index];
end;
end;