张晓华的博客

        2005年,最后一场雪,还是下了,虽然凄凉了一些!
posts - 180, comments - 96, trackbacks - 5, articles - 1

C#里面全角和半角的自由转换

Posted on Thursday, June 09, 2005 8:34 PM

半角转全角:

 c="hello World".ToCharArray();
        for (int i=0;i<c.Length;i++)
        {
            byte[] b=System.Text.Encoding.Unicode.GetBytes(c,i,1);
            if (b.Length= =2)
                  {
                   if (b[1]= =0)
                         {
                       b[0]=(byte)(b[0]-32);
                       b[1]=255;
                       c[i]=System.Text.Encoding.Unicode.GetChars(b)[0];
                         }
                  }
        }

string strNew=new string(c);

全角转半角:

string QJstr = "hello,Amigo  quanjiao字符";
  char[] c=QJstr.ToCharArray();
  for (int i=0;i<c.Length;i++)
  {
   byte[] b=System.Text.Encoding.Unicode.GetBytes(c,i,1);
   if (b.Length= =2)
   {
    if (b[1]= =255)
    {
     b[0]=(byte)(b[0]+32);
     b[1]=0;
     c[i]=System.Text.Encoding.Unicode.GetChars(b)[0];
    }
   }
  }
  string strNew=new string(c);

Feedback

# re: C#里面全角和半角的自由转换

7/25/2005 3:59 AM by benhur
正用到这个,多谢了^^

# [JAVA] 全角转半角,JAVA中对中文的处理。

8/23/2005 10:30 PM by dpuser
最近一段时间,因为正在研究全文检索,所以遇到了很多问题。首先就是怎样对文章进行差别处理,这种差别在中文中尤其明显,例如:标点,数字、字母的全半角问题等。

# re: C#里面全角和半角的自由转换

9/13/2005 7:18 PM by 大号睡衣
using System;
using Microsoft.VisualBasic;
namespace Test7
{
class Test7Class
{
static void Main()
{
string s = Strings.StrConv("全角字", VbStrConv.Narrow, 0);
Console.WriteLine(s);
}
}
}


using System;
using Microsoft.VisualBasic;
namespace Test7
{
class Test7Class
{
static void Main()
{
string s = Strings.StrConv("半角字", VbStrConv.Narrow, 0);
Console.WriteLine(s);
}
}
}

# re: C#里面全角和半角的自由转换

9/27/2005 1:28 AM by Steven Lee
你忽略了空格符,全角为12288,半角为32
可以看下我blog上的实现方法

# [JAVA] 全角转半角,JAVA对中文的处理。

10/18/2005 9:04 PM by dpuser
Ping Back来自:blog.csdn.net

# re: C#里面全角和半角的自由转换

1/20/2006 1:08 AM by 诗一凡
我在学习全文检索。不知道如何!!哎。。。谢谢你们能给我指点!

email:qualylee@163.com

m s n: qualylee@hotmail.com



# re: C#里面全角和半角的自由转换

6/29/2007 10:20 PM by 余世军
using System;
using Microsoft.VisualBasic;
namespace Test7
{
class Test7Class
{
static void Main()
{
string s = Strings.StrConv("全角字", VbStrConv.Narrow, 0);
Console.WriteLine(s);
}
}
}


using System;
using Microsoft.VisualBasic;
namespace Test7
{
class Test7Class
{
static void Main()
{
string s = Strings.StrConv("半角字", VbStrConv.Narrow, 0);
Console.WriteLine(s);
}
}
}

Post Comment

Title  
Name  
Url
Comment   
Protected by Clearscreen.SharpHIPEnter the code you see: