`
niunan
  • 浏览: 723336 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

全角字符与半角字符的相互转换(C#)

    博客分类:
  • .NET
阅读更多
看到视频里有做这个例子,对着视频把代码打了一遍,测试成功,先记下来,以备后用!!!
/// <summary>全角半角的相互转换
/// 
/// </summary>
public class ConvertDBCAndSBC
{
 
    /// <summary>半角转成全角
    /// 半角空格32,全角空格12288
    /// 其他字符半角33~126,其他字符全角65281~65374,相差65248
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    public string DBCToSBC(string input)
    {
        char[] cc = input.ToCharArray();
        for(int i=0;i<cc.Length;i++)
        {
            if(cc[i] == 32)
            {
                // 表示空格
                cc[i]=(char)12288;
                continue;
            }
            if(cc[i] < 127 && cc[i] > 32)
            {
                cc[i]=(char)(cc[i]+65248);                
            }
        }
        return new string(cc);
    }

    /// <summary>全角转半角
    /// 半角空格32,全角空格12288
    /// 其他字符半角33~126,其他字符全角65281~65374,相差65248
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    public string SBCToDBC(string input)
    {
        char[] cc = input.ToCharArray();
        for (int i = 0; i < cc.Length; i++)
        {
            if(cc[i] == 12288)
            {
                // 表示空格
                cc[i] = (char)32;
                continue;
            }
            if (cc[i] > 65280 && cc[i] < 65375)
            {
                cc[i] = (char)(cc[i] - 65248);                
            }

        }
        return new string(cc);
    }
}

测试代码:
        static void Main(string[] args)
        {
            Console.Write("请输入要转为半角的字符:");
            string str = Console.ReadLine();
            Console.WriteLine("半角:" + new ConvertDBCAndSBC().SBCToDBC(str));
            Console.ReadLine();

            Console.Write("请输入要转为全角的字符:");
            string str2 = Console.ReadLine();
            Console.WriteLine("全角:" + new ConvertDBCAndSBC().DBCToSBC(str2));
            Console.ReadLine();
        }

测试效果:

  • 大小: 23.1 KB
分享到:
评论

相关推荐

    C#实现全角字符转换成半角字符

    ### C# 实现全角字符转换成半角字符 #### 1. 全角与半角字符简介 在计算机编码系统中,字符通常有两种不同的宽度:全角(Full-width)和半角(Half-width)。全角字符主要用于亚洲语言环境,如中文、日语等,每个...

    半角与全角字符的转换

    下面是一个简单的C#代码示例,用于将输入字符串中的所有半角字符转换为全角字符: ```csharp private string ToSBC(string input) { char[] c = input.ToCharArray(); for (int i = 0; i ; i++) { if (c[i]...

    C# 半角全角字符转换函数

    C#中提供了两个函数,分别用于将半角字符转换为全角字符(ToSBC)和将全角字符转换为半角字符(ToDBC),这两个函数对于理解和处理中文字符的显示非常有帮助。 半角字符通常是指ASCII字符集中的字符,它们在屏幕上...

    c#文本中全角转半角

    特别是在处理中文文本时,全角字符与半角字符之间的转换尤为常见。本文将详细介绍如何在C#中实现从全角字符到半角字符的转换。 #### 全角与半角字符简介 全角字符和半角字符是针对不同的字符宽度而言的。在中文...

    c#全角转化成半角源程序

    在编程领域,尤其是在处理文本数据时,全角字符与半角字符之间的转换是一个常见的需求。在C#中,这两种字符的表示方式不同,可能导致在某些特定场景下出现兼容性问题,比如在SQL数据库中,全角字符可能无法被正确...

    C# 全角转半角

    根据给定的文件信息,我们可以总结出以下关于C#中全角字符与半角字符转换的相关知识点: ### C# 全角转半角 #### 一、全角与半角字符简介 在计算机中,全角(Full Width)字符与半角(Half Width)字符是根据字符...

    C#全角半角相互转换!

    相反地,将半角字符转换为全角字符,只需在半角字符的Unicode值上加上0x20。以下是转换函数: ```csharp public static string HalfToFullWidth(string halfString) { StringBuilder fullWidthString = new ...

    C#实现全角输入转半角自动切换

    在日常的软件开发过程中,经常会遇到一些与文本处理相关的功能需求,比如将用户输入的全角字符转换为半角字符。这样的功能不仅能够提升用户体验,还能避免因为字符编码差异导致的数据不一致问题。本文将详细介绍如何...

    C#实现字符串全角半角转换类

    如果`isFullWidth`为真,我们把半角字符转换为全角;反之,则把全角字符转换为半角。转换规则是根据Unicode码点的差值进行加减操作。 现在,你可以使用这个`CharConverter`类来方便地在全角和半角之间进行转换了。...

    日文全角半角转化

    日文全角半角转换是指将日文中的全角字符转换为半角字符或将半角字符转换为全角字符的过程。在计算机编程中,日文全角半角转换是非常重要的一步,因为它可以确保日文字符的正确显示和处理。 在 Java 编程语言中,...

    C#全角和半角互换

    全角字符和半角字符在编码上有所不同,导致它们在显示和处理时有明显的差异。本篇文章将详细探讨C#中全角和半角字符的概念、转换方法以及如何在实际编程中进行互换。 首先,我们要理解什么是全角和半角字符。全角...

    C# 全角和半角转换以及判断的简单代码

    在C#编程中,全角和半角字符的处理是一个常见的需求,特别是在处理文本输入、输出和格式化时。全角字符和半角字符的区别主要在于它们占用的字节数和在屏幕上的显示宽度。全角字符占用两个字节,而半角字符仅占用一个...

    解决全角与半角问题

    全角字符在简体中文Windows系统中通常用于汉字和部分标点符号,每个字符占用两个字节,宽度相当于两个半角字符;而半角字符(通常是英文、数字和部分标点)占用一个字节,宽度为一个字符单元。 在描述中提到的“VS...

    C#365-半角全角转换源代码

    半角字符通常指的是ASCII字符,它们占用一个字节,而全角字符则通常用于表示汉字、假名、谚文等,占用两个字节。这种差异在布局、格式化文本或数据传输时可能会引起问题。 标题"C#365-半角全角转换源代码"表明这是...

    .net下数字全角转半角

    在.NET开发环境中,有时我们需要处理全角字符和半角字符之间的转换,这主要涉及到字符串的显示和处理问题。全角字符通常在东亚语言如中文、日文、韩文中使用,占两个字节,而半角字符则占一个字节,主要用于拉丁字母...

    c#半角全角转换源码.rar

    标题中的"半角全角转换源码.rar"指示这是一个C#语言实现的源代码文件,用于进行半角字符到全角字符,以及全角字符到半角字符的转换。这个压缩包包含两个文件:ReadMe.txt和"半角全角转换",其中ReadMe.txt通常用于...

    全半角转换函数

    上述代码中,`ConvertToSBC`函数将全角字符转换为半角,`ConvertToDBC`函数将半角字符转换为全角。 5. **应用场景** 全半角转换函数常用于文本编辑器、聊天软件、输入法等需要处理中文字符的场景,以确保字符的...

    C#控制键盘输入全角半角

    全角字符和半角字符主要的区别在于它们占用的字节数和显示宽度。全角字符在ASCII编码中通常占用两个字节,而半角字符则占用一个字节。在东亚语言如中文、日文、韩文中,全角字符包括汉字、标点符号以及数字等,而...

    Split-由任意个全角或半角空格分隔开的任意长度的字符串

    6. **编码问题**:处理包含全角字符的字符串时,需要确保在整个处理过程中保持正确的字符编码,防止乱码问题。 总之,“Split”操作在编程中扮演着重要角色,特别是在涉及到用户输入、数据解析和数据库查询的场景下...

    C# 半角全角转换 实例源码(系统操作)

    在C#编程中,半角和全角字符的转换是一个常见的需求,特别是在处理文本输入、输出或者格式化显示时。半角字符,也称为ASCII字符,通常用于英文和其他西文字符,每个字符占用一个字节。全角字符,主要用于中文、日文...

Global site tag (gtag.js) - Google Analytics