UE4读取、保存变量到自己的ini文件中

首先 使用ini文件有两种方式

一种是通过GConfig方式进行读取和存储

读数据  GConfig->GetXXX   GConfig->SetXXX  

这里如果使用虚幻已有ini文件的话 没有什么问题,但是如果使用自定义的文件路径的话 就需要修改一下了 就是下面的方式

 

第二种 使用ue4 UPROPERTY变量config 修饰

.h
文件
UCLASS(config = TTT)
class MYPROJECT_API AMyActor : public AActor
{
	GENERATED_BODY()
	
public:	
	// Sets default values for this actor's properties
	UPROPERTY(config, BlueprintReadWrite)
		int32 TempA;

这里注意两个地方 一个是UClass的config为你要保存的ini文件名

然后将你要读取的变量的UPROPERTY中添加config

然后在你的工程config目录下创建ini 我这里就是DefaultTTT  注意 需要将你的ini文件添加Default

然后注意ini格式  /Script/你的工程名.你的使用类去掉A或者U之类的前缀

[/Script/Myproject.MyActor]
TempA=6543
 

这时候就可以运行程序 可以读取到这里面的数值了,然后你如果修改的话,需要重启editor

 

接下来就是修改该变量并保存

这里还是使用GConfig进行保存,不过路径需要注意,因为程序在打shipping包后变量读取的路径就变成了

C:\Users\用户名\AppData\Local\MyProject\Saved\Config\WindowsNoEditor

对应到程序中就是

	FString platFormName = FPlatformProperties::PlatformName();
	FString gameConfigPath = FPaths::GameSavedDir() + TEXT("Config/") + platFormName + TEXT("/TTT.ini");
	
	if (GConfig)
	{
		GConfig->SetInt(TEXT("/Script/Myproject.MyActor"),
			TEXT("TempA"),
			ttt,
			gameConfigPath);

		GConfig->Flush(true, gameConfigPath);
	}

 

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值