UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
StringUtil.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include "Core/Types.h"
5
6#include "Core/Types.h"
7#include "Math/MathConst.h"
8#include "Math/Point.h"
9
10#include <list>
11#include <locale>
12#include <string>
13#include <sstream>
14#include <stdio.h>
15#include <stdarg.h>
16
18{
19
20inline std::string ToString(const TCHAR* WideString)
21{
22 return TCHAR_TO_UTF8(WideString);
23}
24
25template<typename ValueType>
26inline std::string ToString(const ValueType& v)
27{
28 std::stringstream stream;
29 stream << v;
30 return stream.str();
31}
32
33inline std::string ToString(const FVector& p)
34{
35 std::string Message = "dm.FVector(";
36 Message += Utils::ToString(p.X) + "," + Utils::ToString(p.Y) + "," + Utils::ToString(p.Z) + ")";
37 return Message;
38}
39
40inline FString ToFString(const char* Text)
41{
42 return UTF8_TO_TCHAR(Text);
43}
44
45inline FString ToFString(const double& Value)
46{
47 return FString::Printf(TEXT("%f"), Value);
48}
49
50inline FString ToFString(const int32& Value)
51{
52 return FString::Printf(TEXT("%d"), Value);
53}
54
55inline FString ToFString(const uint32& Value)
56{
57 return FString::Printf(TEXT("%u"), Value);
58}
59
60inline FString ToFString(const bool& Value)
61{
62 return FString::Printf(TEXT("%d"), Value);
63}
64
65inline FString ToFString(const FVector& p)
66{
67 return FString::Printf(TEXT("dm.FVector(%f, %f, %f)"), p.X, p.Y, p.Z);
68}
69
70void Explode(const FString& FullString, const TCHAR* Separator, TArray<FString>& StringArray);
71
72inline FString EscapeBackSlashes(const FString& InputString)
73{
74 FString ret;
75 ret.Reserve(InputString.Len());
76 for (TCHAR Char : InputString)
77 {
78 if (Char == TEXT('\\')) {
79 ret.AppendChar(TEXT('\\'));
80 }
81 ret.AppendChar(Char);
82 }
83 return ret;
84}
85
86inline void RemoveUnwantedChar(FString& String, const TCHAR UnwantedChar)
87{
88 FString NewString;
89 NewString.Reserve(String.Len());
90 for (const TCHAR& Char : String)
91 {
92 if (Char != UnwantedChar)
93 {
94 NewString.AppendChar(Char);
95 }
96 }
98}
99
100}
#define TEXT(x)
Definition Platform.h:1272
FPlatformTypes::TCHAR TCHAR
Either ANSICHAR or WIDECHAR, depending on whether the platform supports wide characters or the requir...
Definition Platform.h:1135
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
@ Char
Character type.
#define UTF8_TO_TCHAR(str)
Definition StringConv.h:1022
#define TCHAR_TO_UTF8(str)
Definition StringConv.h:1021
void Move(T &A, typename TMoveSupportTraits< T >::Copy B)
Definition UnrealTemplate.h:24
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Array.h:670
Definition Util.h:12
FString EscapeBackSlashes(const FString &InputString)
Definition StringUtil.h:72
std::string ToString(const TCHAR *WideString)
Definition StringUtil.h:20
void Explode(const FString &FullString, const TCHAR *Separator, TArray< FString > &StringArray)
FString ToFString(const char *Text)
Definition StringUtil.h:40
void RemoveUnwantedChar(FString &String, const TCHAR UnwantedChar)
Definition StringUtil.h:86
float v
Definition radaudio_mdct.cpp:62
T Z
Definition Vector.h:68
T Y
Definition Vector.h:65
T X
Definition Vector.h:62