Slight correction to the code from above.
FString Uni;
FString Result;
uint32 target = 128512;//unicode 1F600
Result=FString::Printf(TEXT("\\%x"),target);//Result will be "1f600"
Uni = TEXT("\u000" + Result);//error C4429: possible incomplete or improperly formed universal-character-name
The problem I have is I am reading data returned from a socket connection and when it sends Unicode data it appears to be encoded in a non-standard way so I have to decode the data myself to a uint32 .
In the case from the code above , target = 128512 which is unicode 1F600 or :).
If I did this
FString Uni = TEXT("\U0001f600");
Uni would equal :).
If I do this
Uni = TEXT("\\u000" + Result);
Uni would equal “\U0001f600”
So how do I take a hex string and turn it into a Unicode equivalent.