跳至主要內容

c10.1JsonToString

Mr.Si小于 1 分钟u++

头像
Json和结构体互转

1.找到定义

2. 发现是宏函数,使用了通配符,所以要找到具体的定义函数cpp

 P_NATIVE_BEGIN
    bResult = FJsonObjectConverter::UStructToJsonObjectString(StructProperty->Struct, ValuePtr, OutJsonString);
    P_NATIVE_END

3. 引入具体的头文件

#include "JsonObjectWrapper.h"
#include "JsonObjectWrapper.h"

4.实现函数

//jsontostring
bool FJsonObjectWrapper::JsonObjectToString(FString& Str) const
{
    TSharedRef<TJsonWriter<TCHAR, TCondensedJsonPrintPolicy<TCHAR>>> JsonWriter = TJsonWriterFactory<TCHAR, TCondensedJsonPrintPolicy<TCHAR>>::Create(&Str, 0);
    return FJsonSerializer::Serialize(JsonObject.ToSharedRef(), JsonWriter, true);
}
//jsonfromstring
bool FJsonObjectWrapper::JsonObjectFromString(const FString& Str)
{
    TSharedRef<TJsonReader<>> JsonReader = TJsonReaderFactory<>::Create(Str);
    return FJsonSerializer::Deserialize(JsonReader, JsonObject);
}