一、新建一个继承自BlueprintFunctionLibrary名为TextFileManager的c++类
.h文件
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "TextFileManager.generated.h"
/**
*
*/
UCLASS()
class TEST_API UTextFileManager : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
UFUNCTION(BlueprintCallable, Category = "Custom", meta = (Keywords = "Save"))
static bool SaveArrayText(FString SaveDirector, FString FileName, TArray<FString> SaveText, bool AllowOverWriting);
};
.cpp文件
// Fill out your copyright notice in the Description page of Project Settings.
#include "TextFileManager.h"
#include "Misc/FileHelper.h"
#include "HAL/PlatformFilemanager.h"
bool UTextFileManager::SaveArrayText(FString SaveDirector, FString FileName, TArray<FString> SaveText, bool AllowOverWriting = false)
{
//Set complete file path.
SaveDirector += "\\";
SaveDirector += FileName;
if (!AllowOverWriting)
{
if (FPlatformFileManager::Get().GetPlatformFile(*SaveDirector))
{
return false;
}
}
FString FinalString = "";
for (FString& Each : SaveText)
{
FinalString += Each;
FinalString += LINE_TERMINATOR;
}
return FFileHelper::SaveStringToFile(FinalString, *SaveDirector);
}
二、添加一个继承自Actor名为BP_DataActor的蓝图
双击蓝图并编辑
三、将BP_DataActor拖入场景当中并运行
可以看到问价目录下生成了一个文件夹