簡體   English   中英

如何在winform程序中以正確的方式輸入或輸出韓語

[英]How can I Input or output Korean in right way in a winform program

        Console.InputEncoding = Encoding.Unicode;
        Console.OutputEncoding = Encoding.GetEncoding("utf-8");
        Console.WriteLine("開始測試starttest전소미123");
        string input = Console.ReadLine();
        Console.WriteLine(input);
        Console.ReadKey();
        Console.ReadKey();

當我運行這些代碼時,我得到完全相同的字符串,如下所示

在此處輸入圖片說明

如果我不設置 InputEncoding 或 OutputEncoding 或兩者,我將無法獲得正確的字符。

但我無法在 winform 程序中設置 Console.OutputEncoding。 它引發了 mscorlib.dll 中發生類型為“System.IO.IOException”的未處理異常。 這個錯誤發生在下面的第二行,

Console.OutputEncoding = Encoding.Unicode;

代碼

        Console.InputEncoding = Encoding.Unicode;
        Console.OutputEncoding = Encoding.Unicode;
        Process process = new Process()
        {
            StartInfo = new ProcessStartInfo
            {
                FileName = $".\\test.exe",
                Arguments = "",
                CreateNoWindow = true,
                UseShellExecute = false,
                ErrorDialog = true,
                //AutoFlush = true,
                //RedirectStandardInput = true,
                RedirectStandardOutput = true,
                RedirectStandardError = true,
                StandardOutputEncoding = Encoding.GetEncoding("utf-8"),
            },
        };
        process.Start();
        string text = process.StandardOutput.ReadLine();

我在網上搜索過類似的問題並測試了好幾個小時,就是想不通。

您對 exe 文件使用什么文本編輯器和編碼? 我認為例如記事本的默認編碼器是 ANSI,我知道它不支持亞洲符號。 如果要更改記事本的編碼器,請單擊“文件”->“另存為”,然后您可以更改“保存”按鈕左側的編碼並將編碼更改為 UTF-8 或 Unicode。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM