UE5/UE4 C++で「FString」型の文字列を値(bool、int32、float)に変換する(FString::ToBool、FCSTring::Atoi、FCSTring::Atof)
公式ドキュメントはこちら。
・FString
https://docs.unrealengine.com/4.27/ja/ProgrammingAndScripting/ProgrammingWithCPP/UnrealArchitecture/StringHandling/FString/
「FString」型の文字列を「bool」に変換するには「FString::ToBool」関数を使います。
FString aStringBool("true");
bool aBoolValue = aStringBool.ToBool();
// ログに表示
UE_LOG(LogTemp, Log, TEXT("BoolValue = %s"), aBoolValue ? TEXT("true") : TEXT("false"));
「FString」型の文字列を「int32」に変換するには「FCString::Atoi」関数を使います。
「FCString」なので注意です。FString aStringInt("123456");
int32 aIntValue = FCString::Atoi(*aStringInt);
// ログに表示
UE_LOG(LogTemp, Log, TEXT("IntValue = %d"), aIntValue);
「FString」型の文字列を「float」に変換するには「FCString::Atof」関数を使います。
こちらも「FCString」なので注意です。FString aStringFloat("789.0123");
float aFloatValue = FCString::Atof(*aStringFloat);
// ログに表示
UE_LOG(LogTemp, Log, TEXT("FloatValue = %f"), aFloatValue);
上記ログの結果はこんな感じになりました。

こんな感じで「FString」型には色々な変換機能があるので使うと便利なのかなと思います。
| UE5 | 10:00 | comments:0 | trackbacks:0 | TOP↑