【UE5 C++课程系列笔记】19——通过GConfig读写.ini文件

步骤

  1. 新建一个Actor类,这里命名为"INIActor"
  1. 新建一个配置文件"Test.ini"

添加一个自定义配置项

  1. 接下来我们在"INIActor"类中获取并修改"CustomInt"的值。这里定义一个方法"GetINIVariable"

方法实现如下,其中第16行代码用于构建配置文件的完整路径,FPaths::SourceConfigDir() 函数会获取虚幻引擎项目中源配置目录的路径,然后通过 FString::Printf 函数按照格式化的方式将源配置目录路径与文件名 DefaultGame.ini 进行拼接,形成完整的配置文件路径。

第17行定义了一个 int32 类型的变量 MyConfigVariable,用于存储从配置文件中读取出来的整型配置变量的值。

第18行中,TEXT("Custom")表示配置节(Section)的名称;TEXT("CustomInt")是配置项(Key)的名称。

第21行调用 GConfig->SetInt 函数将更新后的 MyConfigVariable 的值写回到配置文件中。

第22行GConfig->Flush(false, DefaultGamePath) 语句用于将之前对配置文件所做的修改保存到配置文件中。

cpp 复制代码
void AINIActor::GetINIVariable()
{
	const FString DefaultGamePath = FString::Printf(TEXT("%sTest.ini"), *FPaths::SourceConfigDir());
	int32 MyConfigVariable;
	GConfig->GetInt(TEXT("MyCustom"), TEXT("CustomInt"), MyConfigVariable, DefaultGamePath);
	UE_LOG(LogTemp, Warning, TEXT("CustomInt:%d"), MyConfigVariable);
	MyConfigVariable += 10;
	GConfig->SetInt(TEXT("MyCustom"), TEXT("CustomInt"), MyConfigVariable, DefaultGamePath);
	GConfig->Flush(false, DefaultGamePath);
}
  1. 编译后,创建基于"INIActor"的蓝图类

这里命名为"BP_INIActor"

将"BP_INIActor"拖入视口

  1. 在关卡蓝图中通过1键调用方法"GetINIVariable"

调用后可以看到成功获取配置文件中配置项的值

打开"Test.ini"可以看到成功保存了修改后的配置项

相关推荐
不爱说话的采儿1 天前
UE5详细保姆教程(第四章)
笔记·ue5·游戏引擎·课程设计
二DUAN帝1 天前
UE实现路径回放、自动驾驶功能简记
人工智能·websocket·机器学习·ue5·自动驾驶·ue4·cesiumforue
温玉琳琅2 天前
【UE5】虚幻引擎小百科
ue5·游戏引擎·虚幻
远离UE43 天前
UE 材质 变体 概念
ue5·材质
吴梓穆5 天前
UE5 重新编译插件版本
ue5
HECUgauss5 天前
UE5 使用过程遇到的问题
ue5
小白学过的代码5 天前
ue5.4和webul通信
开发语言·javascript·ue5
m0_552200825 天前
《UE5_C++多人TPS完整教程》学习笔记40 ——《P41 装备(武器)姿势(Equipped Pose)》
c++·游戏·ue5
漫游者Nova5 天前
虚幻引擎Unreal Engine5恐怖游戏设计制作教程,从入门到精通从零开始完整项目开发实战详细讲解中英字幕
ue5·游戏引擎·虚幻·游戏开发完整教程·恐怖游戏开发
ue星空7 天前
UE5音频技术
ue5