首页 > 解决方案 > 如何在 C# 控制台窗口中显示泰米尔语文本“தமிழ்”?

问题描述

正如下面的示例所示,我尝试了各种技术来通过将其 unicode 内容解析到输出窗口来显示泰米尔语文本,但它不起作用。请建议我哪里出错了?

private static void PrintInTamil1()
{
    const string str = "தமிழ்"; // this is already a unicode string.

    byte[] stringBytes = Encoding.Unicode.GetBytes(str);
    char[] stringChars = Encoding.Unicode.GetChars(stringBytes);

    foreach (var chr in stringChars)
    {
        // unicode character code
        var unicoded = ((int)chr).ToString();

        // hex character code
        var hexcoded = @"\u" + ((int)chr).ToString("X4").ToLower();

        Console.OutputEncoding = Encoding.UTF8;
        // print to VS output window
        Console.WriteLine(chr + "     " + unicoded + "     " + hexcoded);
    }
}

private static void PrintInTamil2()
{
    byte[] unicodeBytes = new byte[]
    {0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61,
     0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x70, 0x63,
     0x61, 0x70};

    string unicodeString = Encoding.UTF8.GetString(unicodeBytes);

    Console.WriteLine(unicodeString);
}        

private static void PrintInTamil()
{
    string str = "தமிழ்";
    var myarray2 = Encoding.UTF8.GetBytes(str);
    string unicodeString = Encoding.UTF8.GetString(myarray2);
    Console.WriteLine(unicodeString);
}

标签: c#.netunicodeconsole-applicationtamil

解决方案


推荐阅读