I know following is the way to use unicode in C#
string unicodeString = "\u0D15";
In my situation, I will not get the character code (0D15) at compile time. I get this from a XML file at runtime. I wonder how do I convert this code to unicode string? I tried the following
// will not compile as unrecognized escape sequence
string unicodeString = "\u" + codeFromXML;
// will compile, but just concatenates u with the string got from XML file.
string unicodeString = "\\u" + codeFromXML;
How do I handle this situation?
Any help would be great!
Here's an NUnit test showing arul and Adrian's solution - note that one solution starts with input in a string, while with the other solution the input starts in just a char.
You want to use the char.ConvertFromUtf32 function.
Escape the character in the xml using a character reference:
It will get read properly by c#'s xml parser (at least XElement.Load()).