json 文件读取 c++ ue4
时间: 2023-06-22 20:25:59 浏览: 273
在 Unreal Engine 4 中,可以使用 FJson 模块来读取和解析 JSON 文件。下面是一个简单的示例代码,演示了如何读取 JSON 文件并将其转换为 FString:
```cpp
#include "Json.h"
#include "JsonUtilities.h"
void LoadJsonFile(FString FilePath)
{
FString JsonString;
FFileHelper::LoadFileToString(JsonString, *FilePath);
TSharedPtr<FJsonObject> JsonObject;
TSharedRef<TJsonReader<>> JsonReader = TJsonReaderFactory<>::Create(JsonString);
if (FJsonSerializer::Deserialize(JsonReader, JsonObject))
{
FString Name;
int32 Age;
// Get values from the JSON object
JsonObject->TryGetStringField("name", Name);
JsonObject->TryGetNumberField("age", Age);
// Do something with the values
UE_LOG(LogTemp, Warning, TEXT("Name: %s, Age: %d"), *Name, Age);
}
else
{
UE_LOG(LogTemp, Error, TEXT("Failed to deserialize JSON file: %s"), *FilePath);
}
}
```
在这个例子中,我们首先使用 FFileHelper::LoadFileToString() 函数将 JSON 文件加载到 FString 中。然后,我们使用 TJsonReaderFactory<>::Create() 函数创建一个 JSON 解析器,并将 FString 传递给它。接下来,我们使用 FJsonSerializer::Deserialize() 函数将 JSON 解析器转换为 FJsonObject 对象。
一旦我们有了 FJsonObject 对象,我们可以使用 TryGetStringField() 和 TryGetNumberField() 函数从中获取值。最后,我们可以使用这些值做任何我们想做的事情。
阅读全文