1.全角:指一个字符占用两个标准字符位置。汉字字符和规定了全角的英文字符及国标GB2312-80中的图形符号和特殊字符都是全角字符。一般的系统命令是不用全角字符的,只是在作文字处理时才会使用全角字符。
2.半角:指一字符占用一个标准的字符位置。通常的英文字母、数字键、符号键都是半角的,半角的显示内码都是一个字节。在系统内部,以上三种字符是作为基本代码处理的,所以用户输入命令和参数时一般都使用半角。
3.全角与半角在计算机中的表示:据我所知,全角的第一个字节是163(我用-93),然后第二个字节与半角相差128。全角空格和半角空格也要考虑进去。
4.C/C++版本:
string ToDBS(string str) {
string result = "";
unsigned char tmp; unsigned char tmp1;
for (unsigned int i = 0; i < str.length(); i++) {
tmp = str[i];
tmp1 = str[i + 1];
cout << "uchar:" << (int) tmp << endl;
if (tmp == 163) {///第一个字节是163,标志着是全角字符
result += (unsigned char) str[i + 1] - 128;
i++;
continue;
} else if (tmp > 163) {//汉字
result += str.substr(i, 2);
i++;
continue;
} else if (tmp == 161 && tmp1 == 161) {///处理全角空格
result += "";
i++;
} else {
result += str.substr(i, 1); } } return result;
}
5.C#版本:
/// <summary>
/// 转全角的函数(SBC case)
/// </summary>
/// <param name="input">任意字符串</param>
/// <returns>全角字符串</returns>
///<remarks>
///全角空格为12288,半角空格为32
///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
///</remarks>
public static string ToSBC(string input)
{
//半角转全角:
char[] c = input.ToCharArray();
for (int i = 0; i < c.Length; i++)
{
if (c[i] == 32)
{
c[i] = (char)12288;
continue;
}
if (c[i] < 127)
c[i] = (char)(c[i] + 65248);
}
return new string(c);
}
/// <summary>
/// 转半角的函数(DBC case)
/// </summary>
/// <param name="input">任意字符串</param>
/// <returns>半角字符串</returns>
///<remarks>
///全角空格为12288,半角空格为32
///其他字符半角(33-126)与全角(65281-65374)的对应关系是:均相差65248
///</remarks>
public static string ToDBC(string input)
{
char[] c = input.ToCharArray();
for (int i = 0; i < c.Length; i++)
{
if (c[i] == 12288) {
c[i] = (char)32;
continue;
}
if (c[i] > 65280 && c[i] < 65375)
c[i] = (char)(c[i] - 65248);
}
return new string(c);
}
6.java版本
/**
* 半角转全角
* @param input String.
* @return 全角字符串.
*/
public static String ToSBC(String input) {
char c[] = input.toCharArray();
for (int i = 0; i < c.length; i++) {
if (c[i] == ' ') {
c[i] = '\u3000'; //采用十六进制,相当于十进制的12288
} else if (c[i] < '\177') { //采用八进制,相当于十进制的127
c[i] = (char) (c[i] + 65248);
}
}
return new String(c);
}
/**
* 全角转半角
* @param input String.
* @return 半角字符串
*/
public static String ToDBC(String input) {
char c[] = input.toCharArray();
for (int i = 0; i < c.length; i++) {
if (c[i] == '\u3000') {
c[i] = ' ';
} else if (c[i] > '\uFF00' && c[i] < '\uFF5F') {
c[i] = (char) (c[i] - 65248);
}
}
String returnString = new String(c);
return returnString;
}
分享到:
相关推荐
对postgresql数据库中不规则的数据批量处理查询,有些是全角的,需要转换查询,匹配,可以使用这个方法postgres全角转半角函数.txt
标题中的“pb全角转半角”指的是在PowerBuilder(PB)环境中,将全角字符转换为半角字符的操作。在计算机编程和文本处理中,全角字符和半角字符是两种不同的字符表示方式。全角字符通常占两个字节,而半角字符占一个...
### PB中全角与半角互转函数 #### 背景介绍 在处理文本数据时,经常会遇到全角字符和半角字符的转换需求。全角和半角字符主要区别在于显示宽度不同:全角字符占用两个半角字符的空间。这种特性在东亚语言(如中文、...
安装此类更新有时能解决一些与程序兼容性或运行时环境相关的问题,但在这里它可能并不是直接解决全角半角问题的工具。然而,如果VS2005开发的程序依赖于.NET Framework,并且存在与此更新相关的兼容性问题,那么安装...
### 一、全角与半角的基本概念 在计算机处理中文文本时,经常会遇到全角(Full Width Character)与半角(Half Width Character)的问题。全角和半角主要区别在于字符宽度的不同,具体表现为: - **全角字符**:在...
`转全角半角(C#,VB_NET) - RubyPdf 的中文博客 - 博客园.htm`、`C#中直接调用VB_NET的函数,兼论半角与全角、简繁体中文互相转化 - 空军 - 博客园.htm`等文章则深入探讨了全角半角转换以及跨语言调用的具体实现。...
这种对应关系使得我们在处理中英文混合文本时,可以通过简单的算法实现全角与半角字符之间的相互转换。 #### JavaScript中的全角转半角函数 下面详细介绍如何使用JavaScript编写一个函数来实现全角到半角的转换: ...
将日语全角转为半角
在Java编程中,字符串的全角半角转换是一项常见的需求,尤其在处理用户输入或文本显示时。全角字符和半角字符的区别在于他们的宽度和编码方式。全角字符(全宽度字符)通常用于东亚语言,如中文、日文、韩文等,每个...
js 实现 全角转半角! 值得下载看看!资源免费,大家分享!!
### 半角与全角字符的转换 #### 知识点概述 在计算机科学与编程领域,字符编码是一项基础而重要的技术。字符编码涉及到字符如何被表示为二进制数字,以便于计算机处理和存储。根据不同的编码方式,相同的字符可能...
#### 全角与半角字符简介 全角字符和半角字符是针对不同的字符宽度而言的。在中文环境下,全角字符通常用于中文字符、数字和标点符号,而半角字符则用于英文字符、数字和标点符号。在编码中,全角字符占用两个字节...
C++全角半角字符转换
在IT领域,尤其是在编程语言C++中,全角与半角字符转换是一个常见的需求,尤其在处理东亚语言如中文、日语和韩语时。全角(Full-width)和半角(Half-width)字符的区别主要在于宽度和字符集。全角字符通常用于东亚...
// 全角转半角 Result := Result + Ch; end; end; ``` 这段代码创建了一个新的函数`FullToHalfWidth`,它接受一个AnsiString类型的参数`InputStr`,并返回转换后的字符串。循环遍历输入字符串的每一个字符,如果...
综上所述,全角半角转换函数在文本处理领域具有重要的实用价值,尤其在东亚语言环境中,对于确保文本正确显示、计算和对齐具有不可或缺的作用。通过对上述函数的理解和应用,可以有效提升软件产品的国际化水平和用户...
"日文全角半角转化" 日文全角半角转换是指将日文中的全角字符转换为半角字符或将半角字符转换为全角字符的过程。在计算机编程中,日文全角半角转换是非常重要的一步,因为它可以确保日文字符的正确显示和处理。 在...
#### 一、全角与半角字符简介 在计算机中,全角(Full Width)字符与半角(Half Width)字符是根据字符宽度来区分的两种不同格式的字符。一般情况下,全角字符主要用于东亚语言(如中文、日语、韩语等),其宽度...
全角半角互相转
总结来说,全角半角转换是处理中英文混合文本时的重要工具,这个"全角半角转换器.exe"程序简化了这一过程,为用户提供了实用的功能。通过理解全角和半角字符的差异以及转换原理,我们可以更好地理解和利用这个工具,...