본문 바로가기

[Unreal] unreal 스트링 처리

Kwonriver 2022. 1. 22.
728x90

Unreal 내에는 FName, FText, FString 3개의 스트링 자료형이 존재한다.

 

서로 간의 암묵적 형변환이 존재하지 않아 명시적으로 변환 함수를 사용해서 변환해야 한다.

 

아래는 언리얼 공식 도큐먼트에서 정의한 내용들이다.

FName 에서  FString TestHUDString = TestHUDName.ToString();
FName 에서  FText TestHUDText = FText::FromName(TestHUDName);

FName -> FText 는 가능한 경우도 있지만, FName 의 내용이 FText 의 "자동 현지화" 혜택을 받지 못할 수 있음에 유념해 주시기 바랍니다.
FString 에서  FName TestHUDName = FName(*TestHUDString);

FString -> FName 은 손실성 변환이라 위험합니다. FName 은 대소문자를 구분하지 않기 때문입니다.
FString 에서  FText TestHUDText = FText::FromString(TestHUDString);

FString -> FText 은 가능한 경우도 있지만, FString 의 내용이 FText 의 "자동 현지화" 혜택을 받지 못할 수 있음에 유념해 주시기 바랍니다.
FText 에서  FString TestHUDString = TestHUDText.ToString();

FText -> FString 은 안전하지 않습니다. 일부 언어에서는 변환시 손실될 위험이 있습니다.
FText 에서  FName FText 에서 FName 으로의 직접 변환은 없습니다. 대신, FString 을 거친 다음 FName 으로 변환하는 방법이 있습니다.

FText -> FString -> FName 은 손실성 변환이라 위험합니다. FName 은 대소문자를 구분하지 않기 때문입니다.

https://docs.unrealengine.com/4.27/ko/ProgrammingAndScripting/ProgrammingWithCPP/UnrealArchitecture/StringHandling/

 

스트링 처리

UE4 에서 사용가능한 스트링 클래스에 대한 개요와 FName, FText, FString 에 대한 참고 안내서입니다.

docs.unrealengine.com

 

728x90