纯蓝
发布于
调用 FText::FromXXX 类型的静态函数来完成向 FText 的转换,如 FText::FromString 、FText::FromName 等。 FString Str = TEXT("ABC"); FName Name = TEXT("DEF"); //FString --> FText FText Text = FText::FromString(Str); //FName --> FText FText Text_1 = FText::FromName(Name); 二,其他转 FName 只能由 FString 转换到 FName ,并且只能通过 FName 的构造函数。 //FString --> FName FName Name_1 = FName(Str); 三,其他转 FString FString 是 UE 中字符串转换的中枢,能和多种类型的数据相互转换。 对于 FName、FText,通过 ToString 函数完成向 FString 的转换。 //FName --> FString FString Str_1 = Name.ToString(); //FText --> FString FString Str_2 = Text.ToString(); 对于C++标准库中的 std::string ,通过 FString 的构造函数完成转换。 //std::string --> FString std::string s = "StdStr"; FString Str_3(s.c_str()); 对于int、float,则通过 FString 的静态函数FromInt、SanitizeFloat完成成转换。 int i = 100; float f = 200; //int --> FString FString Str_4 = FString::FromInt(i); //float --> FString FString Str_5 = FString::SanitizeFloat(f); 四,其他转 int 和 float FString 转换成 int 和 float,是通过 FCString::Atoi、FCString::Atof 等函数族完成。 FString IntStr = "1234"; FString FloatStr = "1234.1234"; //FString --> int int32 ii = FCString::Atoi(*IntStr); //FString --> float float ff = FCString::Atof(*FloatStr); 五,FString 转 TCHAR* 只需要对 FString 解引用即可 //FString --> TACHR* const TCHAR* MyChar = *Str; 六,FString 转 std::string //FString --> std::string std::string s1(TCHAR_TO_UTF8(*Str));
浏览 (360)
点赞 (1)
收藏
评论