【UE5 C++课程系列笔记】34——结构体与Json的相互转化

目录

准备工作

一、结构体转Json

二、Json转结构体

三、复杂结构体与Json的转换


主要通过借助FJsonObjectConverter类实现结构体和 JSON 之间的相互转换。

准备工作

首先新建一个结构体如下

添加两个方法分别用于将Struct转为Json、Json转为Struct

一、结构体转Json

cpp 复制代码
FString ASampleJson::StructToJson(const FMyTestStruct& MyStruct)
{
	FString JsonString;

	FJsonObjectConverter::UStructToJsonObjectString(MyStruct, JsonString);
	return JsonString;
}

二、Json转结构体

cpp 复制代码
FMyTestStruct ASampleJson::JsonToStruct(const FString& JsonString)
{
	FMyTestStruct MyStruct;
	FJsonObjectConverter::JsonObjectStringToUStruct(JsonString, &MyStruct);
	return MyStruct;
}

三、复杂结构体与Json的转换

当结构体中包含数组、嵌套结构体或结构体数组时,需要将上面的结构体形式修改一下,如下所示:

执行如下

相关推荐
D e re k ZH10 小时前
保序回归:从 PAVA 到可并堆的单调约束优化
c++·算法·数据挖掘·回归·kotlin
青少儿编程课堂10 小时前
蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:字典树前缀树与单词检索统计
c++·python·算法·bfs·信息学竞赛
Nuanyt10 小时前
LeetCode Hot 100 链表专题2 3 题 (Java)
java·笔记·算法·leetcode·链表
asaotomo10 小时前
截图识题、AI 讲解、笔记沉淀:Chrome 扩展体验
前端·chrome·笔记
熊猫钓鱼>_>10 小时前
鸿蒙PC高分屏与键鼠交互适配:DPI缩放、右键菜单一次讲清
开发语言·笔记·华为·ai编程·harmonyos·鸿蒙·鸿蒙心迹
H_BB11 小时前
面试笔记:数据加密和心跳机制
笔记·面试·职场和发展
海绵宝宝转agent11 小时前
LeetCodehot100题解
java·笔记·学习·算法·leetcode·深度优先
octopus_c11 小时前
C++ 运算符重载详解 && 日期类的实现
开发语言·c++
青少儿编程课堂11 小时前
2026蓝桥杯·全国青少年信息素养大赛·电子学会Python/C++考级:堆排序与优先队列解析
c++·python·算法·bfs·信息学竞赛
j7~11 小时前
【C++ 面试笔记】(篇二):类与数据抽象 & STL 容器与算法
开发语言·c++·面试·stl容器和算法·类和数据抽象