[C#]把半角字符转换为全角

来源:互联网 发布:mac jmeter 安装 编辑:程序博客网 时间:2024/05/16 05:42
        原始帖子在这里:http://topic.csdn.net/t/20041018/11/3465589.html 我只是整理了一下,简化了一些冗余代码。

        /// <summary>
        /// 半角(DBC case)转全角(SBC case)
        /// </summary>
        /// <param name="source">被转换的半角字符串</param>
        /// <returns>转换后的全角字符串</returns>
        static string DBC2SBC(string source)
        {
            //袁晓辉(http://blog.csdn.net/uoyevoli) 整理
            byte[] bytes = Encoding.Unicode.GetBytes(source);
            for (int i = 0; i < bytes.Length; i += 2)
            {
                if (bytes[i + 1] == 0)
                {
                    bytes[i] -= 32;
                    bytes[i + 1] = 255;
                }
            }
            return new string(Encoding.Unicode.GetChars(bytes));
        }