【语言-c#】C# 获取所有字符编码集

获取列表


private System.Windows.Forms.ComboBox cbxEncoding;
this.cbxEncoding = new System.Windows.Forms.ComboBox();
this.cbxEncoding.FormattingEnabled = true;
this.cbxEncoding.Location = new System.Drawing.Point(151, 29);
this.cbxEncoding.Name = "cbxEncoding";
this.cbxEncoding.Size = new System.Drawing.Size(496, 28);
this.cbxEncoding.TabIndex = 3;
this.cbxEncoding.SelectedIndexChanged += new System.EventHandler(this.cbxEncoding_SelectedIndexChanged);

private void MainForm_Load(object sender, EventArgs e)
{
    EncodingInfoX.LoadEncodings(cbxEncoding,"gb2312");
}

private void cbxEncoding_SelectedIndexChanged(object sender, EventArgs e)
{
    try
    {
        EncodingInfoX x  = cbxEncoding.SelectedItem as EncodingInfoX;
        if (x == null) return;
        //...
    }
    catch(Exception exp)
    {
        System.Windows.Forms.MessageBox.Show(exp.Message, "异常");
    }
}

EncodingInfoX.cs 

public class EncodingInfoX : Object
    {
        public EncodingInfo src { get; set; }

        public EncodingInfoX(EncodingInfo source)
        {
            src = source;
        }
        public int NameLength = 15;
        public override string ToString()
        {
            string temp = src.Name;
            if (temp.Length > NameLength)
            {
                temp = temp.Substring(0, NameLength - 3) + "...";
            }
            return string.Format("{0,5}|{1,-" + NameLength + "}|{2}", src.CodePage, temp, src.DisplayName);
        }
        /// <summary>
        /// 将编码清单加载到 ComboBox 控件中
        /// </summary>
        /// <param name="cbx"></param>
        /// <param name="selectName"></param>
        public static void LoadEncodings(System.Windows.Forms.ComboBox cbx, string selectName)
        {
            try
            {
                cbx.Items.Clear();
                EncodingInfo[]  Encodings = Encoding.GetEncodings();
                EncodingInfoX[] EncodingExs = new EncodingInfoX[Encodings.Length];
                int index = -1;
                string name = selectName;
                for (int i = 0; i < Encodings.Length; i++)
                {
                    EncodingExs[i] = new EncodingInfoX(Encodings[i]);
                    if (string.IsNullOrEmpty(name) == false && Encodings[i].Name.ToLower() == name.ToLower())
                    {
                        index = i;
                    }
                }
                cbx.Items.AddRange(EncodingExs);
                if (index != -1) cbx.SelectedIndex = index;
            }
            catch (Exception exp)
            {
                System.Windows.Forms.MessageBox.Show(exp.Message);
            }
        }
    }

效果展示

字符编码清单 

代码页(CodePage)名称(Name)显示名称(DisplayName)
0gb2312简体中文(GB2312) - 默认
37IBM037IBM EBCDIC (美国-加拿大)
437IBM437OEM 美国
500IBM500IBM EBCDIC (国际)
708ASMO-708阿拉伯字符(ASMO-708)
720DOS-720阿拉伯字符(DOS)
737ibm737希腊字符(DOS)
775ibm775波罗的海字符(DOS)
850ibm850西欧字符(DOS)
852ibm852中欧字符(DOS)
855IBM855OEM 西里尔语
857ibm857土耳其字符(DOS)
858IBM00858OEM 多语言拉丁语 I
860IBM860葡萄牙语(DOS)
861ibm861冰岛语(DOS)
862DOS-862希伯来字符(DOS)
863IBM863加拿大法语(DOS)
864IBM864阿拉伯字符(864)
865IBM865北欧字符(DOS)
866cp866西里尔字符(DOS)
869ibm869现代希腊字符(DOS)
870IBM870IBM EBCDIC (多语言拉丁语 2)
874windows-874泰语(Windows)
875cp875IBM EBCDIC (现代希腊语)
932shift_jis日语(Shift-JIS)
936gb2312简体中文(GB2312)
949ks_c_5601-1987韩语
950big5繁体中文(Big5)
1026IBM1026IBM EBCDIC (土耳其拉丁语 5)
1047IBM01047IBM 拉丁语 1
1140IBM01140IBM EBCDIC (美国-加拿大-欧洲)
1141IBM01141IBM EBCDIC (德国-欧洲)
1142IBM01142IBM EBCDIC (丹麦-挪威-欧洲)
1143IBM01143IBM EBCDIC (芬兰-瑞典-欧洲)
1144IBM01144IBM EBCDIC (意大利-欧洲)
1145IBM01145IBM EBCDIC (西班牙-欧洲)
1146IBM01146IBM EBCDIC (英国-欧洲)
1147IBM01147IBM EBCDIC (法国-欧洲)
1148IBM01148IBM EBCDIC (国际-欧洲)
1149IBM01149IBM EBCDIC (冰岛语-欧洲)
1200utf-16Unicode
1201utf-16BEUnicode (Big-Endian)
1250windows-1250中欧字符(Windows)
1251windows-1251西里尔字符(Windows)
1252Windows-1252西欧字符(Windows)
1253windows-1253希腊字符(Windows)
1254windows-1254土耳其字符(Windows)
1255windows-1255希伯来字符(Windows)
1256windows-1256阿拉伯字符(Windows)
1257windows-1257波罗的海字符(Windows)
1258windows-1258越南字符(Windows)
1361Johab韩语(Johab)
10000macintosh西欧字符(Mac)
10001x-mac-japanese日语(Mac)
10002x-mac-chinesetrad繁体中文(Mac)
10003x-mac-korean韩语(Mac)
10004x-mac-arabic阿拉伯字符(Mac)
10005x-mac-hebrew希伯来字符(Mac)
10006x-mac-greek希腊字符(Mac)
10007x-mac-cyrillic西里尔字符(Mac)
10008x-mac-chinesesimp简体中文(Mac)
10010x-mac-romanian罗马尼亚语(Mac)
10017x-mac-ukrainian乌克兰语(Mac)
10021x-mac-thai泰语(Mac)
10029x-mac-ce中欧字符(Mac)
10079x-mac-icelandic冰岛语(Mac)
10081x-mac-turkish土耳其字符(Mac)
10082x-mac-croatian克罗地亚语(Mac)
12000utf-32Unicode (UTF-32)
12001utf-32BEUnicode (UTF-32 Big-Endian)
20000x-Chinese-CNS繁体中文(CNS)
20001x-cp20001TCA 中国台湾
20002x-Chinese-Eten繁体中文(Eten)
20003x-cp20003IBM5550 中国台湾
20004x-cp20004TeleText 中国台湾
20005x-cp20005Wang 中国台湾
20105x-IA5西欧字符(IA5)
20106x-IA5-German德语(IA5)
20107x-IA5-Swedish瑞典语(IA5)
20108x-IA5-Norwegian挪威语(IA5)
20127us-asciiUS-ASCII
20261x-cp20261T.61
20269x-cp20269ISO-6937
20273IBM273IBM EBCDIC (德国)
20277IBM277IBM EBCDIC (丹麦-挪威)
20278IBM278IBM EBCDIC (芬兰-瑞典)
20280IBM280IBM EBCDIC (意大利)
20284IBM284IBM EBCDIC (西班牙)
20285IBM285IBM EBCDIC (UK)
20290IBM290IBM EBCDIC (日语片假名)
20297IBM297IBM EBCDIC (法国)
20420IBM420IBM EBCDIC (阿拉伯语)
20423IBM423IBM EBCDIC (希腊语)
20424IBM424IBM EBCDIC (希伯来语)
20833x-EBCDIC-KoreanExtendedIBM EBCDIC (韩语扩展)
20838IBM-ThaiIBM EBCDIC (泰语)
20866koi8-r西里尔字符(KOI8-R)
20871IBM871IBM EBCDIC (冰岛语)
20880IBM880IBM EBCDIC (西里尔俄语)
20905IBM905IBM EBCDIC (土耳其语)
20924IBM00924IBM 拉丁语 1
20932EUC-JP日语(JIS 0208-1990 和 0212-1990)
20936x-cp20936简体中文(GB2312-80)
20949x-cp20949韩语 Wansung
21025cp1025IBM EBCDIC (西里尔塞尔维亚-保加利亚语)
21866koi8-u西里尔字符(KOI8-U)
28591iso-8859-1西欧字符(ISO)
28592iso-8859-2中欧字符(ISO)
28593iso-8859-3拉丁语 3 (ISO)
28594iso-8859-4波罗的海字符(ISO)
28595iso-8859-5西里尔字符(ISO)
28596iso-8859-6阿拉伯字符(ISO)
28597iso-8859-7希腊字符(ISO)
28598iso-8859-8希伯来字符(ISO-Visual)
28599iso-8859-9土耳其字符(ISO)
28603iso-8859-13爱沙尼亚语(ISO)
28605iso-8859-15拉丁语 9 (ISO)
29001x-Europa欧罗巴
38598iso-8859-8-i希伯来字符(ISO-Logical)
50220iso-2022-jp日语(JIS)
50221csISO2022JP日语(JIS-允许 1 字节假名)
50222iso-2022-jp日语(JIS-允许 1 字节假名 - SO/SI)
50225iso-2022-kr韩语(ISO)
50227x-cp50227简体中文(ISO-2022)
51932euc-jp日语(EUC)
51936EUC-CN简体中文(EUC)
51949euc-kr韩语(EUC)
52936hz-gb-2312简体中文(HZ)
54936GB18030简体中文(GB18030)
57002x-iscii-deISCII 梵文
57003x-iscii-beISCII 孟加拉语
57004x-iscii-taISCII 泰米尔语
57005x-iscii-teISCII 泰卢固语
57006x-iscii-asISCII 阿萨姆语
57007x-iscii-orISCII 奥里雅语
57008x-iscii-kaISCII 卡纳达语
57009x-iscii-maISCII 马拉雅拉姆语
57010x-iscii-guISCII 古吉拉特语
57011x-iscii-paISCII 旁遮普语
65000utf-7Unicode (UTF-7)
65001utf-8Unicode (UTF-8)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值