byte[] 轉字符串 中文亂碼


閑來無事,寫了一個UWP的UDP/TCP小Demo,網上找了個網絡調試助手,就興沖沖的開始玩耍

結果“雞同鴨講”:

講英文的時候大家都是abc,hello man!how are you?

講中文的時候:

UWP Demo=》你好啊!

網絡調試助手=》浣犲ソ鍟婏紒

好吧,可能一個是北方人,一個南方人。

查一查,UWP默認支持以下編碼:
        public static Encoding ASCII { get; }
        public static Encoding BigEndianUnicode { get; }
        public static Encoding Unicode { get; }
        public static Encoding UTF32 { get; }
        public static Encoding UTF7 { get; }
        public static Encoding UTF8 { get; }

挨個試試,都不行,然后各種搜索~~

Java平台和一些老舊桌面程序,一般都是用GBK/GB2312

然而UWP木有這2個編碼,桌面程序倒是支持

新時代程序員誰就應該統一用UTF-8!誰還管啥GBK,GBA啥玩意兒的!(問題解決不了,本人只好這樣安慰自己)

奈何還是不甘心,終於搜索到這樣一篇文章:難道.NET Core到R2連中文編碼都不支持嗎?

Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

問題解決~

然后新的問題來了:如何判斷 byte[] 的編碼,以正確轉換為中文字符串而不出現亂碼?

各種嘗試之后,中文大家還是默認UTF-8吧!就醬

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM