ue4.27 C++ 解析内容为json的字符串

json字符串为 R"({"x": -1870.0, "y": -11400.0})",里面内容是个json对象。

复制代码
const FString& Message = R"({"x": -1870.0, "y": -11400.0})";
TSharedRef<TJsonReader<>> Reader = TJsonReaderFactory<>::Create(Message);
TSharedPtr<FJsonObject> JsonObject;

if (FJsonSerializer::Deserialize(Reader, JsonObject) && JsonObject.IsValid())
{
	float x = JsonObject->GetNumberField("x");
	float y = JsonObject->GetNumberField("y");
}

R:表示这个字符串是原始字符串,不需要转义,允许字符串中包括\n等特殊字符

注意事项:

  • 1、需要引入json相关的头文件

    #include "Json.h"

  • 2、在项目的Build.cs文件中添加json相关的内容

    PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "WebSockets", "Json" });

  • 3、重新编译项目,如果编译出错,可以尝试在ue4中,文件-刷新Visual Studio项目,自动打开Visual Studio再编译

相关推荐
t***5446 小时前
如何在现代C++中更有效地应用这些模式
java·开发语言·c++
itman3017 小时前
C语言、C++与C#深度研究:从底层到现代开发演进全解析
c语言·c++·c·内存管理·编译模型
Hical_W8 小时前
为 C++ Web 框架设计三层 PMR 内存池:从原理到实战
c++·github
BestOrNothing_20159 小时前
C++零基础到工程实战(3.6):逻辑实战示例—日志模块
c++·命令行参数·main函数·switch case·逻辑判断·if else·enum class
t***5449 小时前
有哪些常见的架构设计模式在现代C++中应用
开发语言·c++
zopple10 小时前
汇编、C、C++和Java核心技术对比
c语言·汇编·c++
汉克老师10 小时前
GESP2024年3月认证C++三级( 第三部分编程题(1、字母求和)
c++·string·gesp三级·gesp3级·大小写判断
沐雪轻挽萤10 小时前
10. C++17新特性-保证的拷贝消除 (Guaranteed Copy Elision / RVO)
开发语言·c++
leaves falling11 小时前
C/C++ 的内存管理,函数栈帧详讲
java·c语言·c++
wuyoula11 小时前
AI导航智能决策系统源码 附教程
c++·tcp/ip·源码