BluePrint에서의 FString을 c++에서 std::string으로 받을 때
공부/Unreal42017. 1. 6. 17:31
void Function(FString path)
{
//std::string filename(TCHAR_TO_UTF8(*path));
//인코딩 문제 발생 : https://docs.unrealengine.com/latest/INT/Programming/UnrealArchitecture/StringHandling/CharacterEncoding/
const wchar_t* ptr = *path;
int csize = 128; //글자 바이트 제한
char* tempFileName = new char[csize];
char def = '?';
//함수 참고 Url : https://msdn.microsoft.com/en-us/library/windows/desktop/dd374130(v=vs.85).aspx
WideCharToMultiByte(CP_ACP, 0, ptr, -1, tempFileName, csize, &def, NULL);
std::string fileName(tempFileName);
delete[] tempFileName;
}
TCHAR_TO_UTF8로 받으면 ???으로 한글이 바뀐다.
WideCharToMultiByte 를 사용하여 처리하면 한글로 제대로 보여지게 된다.
각 주석의 url을 걸어놨으니 확인해보자.
'공부 > Unreal4' 카테고리의 다른 글
언리얼4 - hexString to 한글 (0) | 2017.01.15 |
---|---|
언리얼4 체인 효과 내기 (0) | 2017.01.11 |
언리얼 인벤토리 시스템 자료 (0) | 2017.01.11 |
블루프린트 받아올 때 실수한 부분 (0) | 2017.01.10 |
TScriptDelegate<FWeakObjectPtr> 사용 주의 (0) | 2017.01.04 |