转载一个牛人的。方便以后查看使用:
也许. 这个代码对很多人来说, 不知道有什么用途. 或者说, 他们用不上. 本来也是随意贴贴的.
我们做的系统, 很多是电脑基础很差的顾客, 跟他说不清楚全角/半角的差别, 对于一些要求数字输入, 或者半角限制的输入, 这时候很多客户会说, 我明明输入是数字, 为什么系统说这不是数字呢. 所以, 我们在输入合法检查之前, 把用户的输入进行善意的撰改. 以达到合法输入的目的. 这在用户体验上有很好的效果. 希望大家都能做更好的用户体验:)
-
-
-
-
-
-
public class BCConvert {
-
-
-
-
-
static final char DBC_CHAR_START = 33;
-
-
-
-
-
static final char DBC_CHAR_END = 126;
-
-
-
-
-
static final char SBC_CHAR_START = 65281;
-
-
-
-
-
static final char SBC_CHAR_END = 65374;
-
-
-
-
-
static final int CONVERT_STEP = 65248;
-
-
-
-
-
static final char SBC_SPACE = 12288;
-
-
-
-
-
static final char DBC_SPACE = ' ';
-
-
-
-
-
-
-
-
public static String DBC2SBC(String src) {
-
if (src == null) {
-
return src;
- }
-
StringBuilder buf = new StringBuilder(src.length());
-
char[] ca = src.toCharArray();
-
for (int i = 0; i < ca.length; i++) {
-
if (ca[i] == DBC_SPACE) {
- buf.append(SBC_SPACE);
-
} else if ((ca[i] >= DBC_CHAR_START) && (ca[i] <= DBC_CHAR_END)) {
-
buf.append((char) (ca[i] + CONVERT_STEP));
-
} else {
- buf.append(ca[i]);
- }
- }
-
return buf.toString();
- }
-
-
-
-
-
-
-
-
public static String SBC2DBC(String src) {
-
if (src == null) {
-
return src;
- }
-
StringBuilder buf = new StringBuilder(src.length());
-
char[] ca = src.toCharArray();
-
for (int i = 0; i < src.length(); i++) {
-
if (ca[i] >= SBC_CHAR_START && ca[i] <= SBC_CHAR_END) {
-
buf.append((char) (ca[i] - CONVERT_STEP));
-
} else if (ca[i] == SBC_SPACE) {
- buf.append(DBC_SPACE);
-
} else {
- buf.append(ca[i]);
- }
- }
-
return buf.toString();
- }
-
- }
分享到:
相关推荐
在转换过程中,程序会识别出全角字符,然后将其转化为对应的半角字符。 全角转半角的过程一般包括以下步骤: 1. 读取输入文本:程序首先读取用户提供的包含全角字符的文本。 2. 分析字符编码:对每个字符进行分析,...
### Java全角半角转换程序知识点详解 #### 核心概念 在计算机处理文本时,全角字符和半角字符是常见的编码问题。全角字符主要用于东亚语言(如中文、日语、韩语等),其宽度通常是半角字符的两倍。在ASCII码中,...
理解全半角转换的概念并掌握其在不同编程语言中的实现方法,对于解决字符编码问题、优化文本处理流程和提高程序兼容性具有重要意义。在实际操作中,需要特别注意字符编码的统一,避免因编码不匹配引发的乱码问题。...
全角半角转换工具是一款可以批量将全角转换成半角,或批量将半角转换为全角的软件。全角半角转换工具支持文件导入、导出。 使用方法 1.将带有全角数字的新闻(Ctrl C)复制,在(Ctrl V)粘贴到上面文本框内。 2....
全角(Full Width)和半角(Half Width)字符是根据字符在屏幕上的显示宽度来区分的,广泛应用于东亚语言环境,如中文、日文、韩文中。全角字符通常占用两个字节宽的空间,而半角字符则只占用一个字节宽的空间。这种...
全角字符(Full-Width Characters)主要用在东亚语言中,如中文、日文、韩文等,它们占用两个字节的存储空间,通常用于表示汉字、标点符号等。相比之下,半角字符(Half-Width Characters)是西方语言常用的字符形式...
`sbcdbc.exe` 可能是全角半角转换工具的可执行程序,用户可以直接运行来实现转换功能;而`下载说明.htm`很可能是提供关于如何安装、使用该工具的详细说明,包括可能的操作步骤、注意事项以及常见问题解答。 使用...
总结而言,全半角互转换工具.zip提供了一个实用的解决方案,用以应对全角字符与半角字符转换的需要。它不仅能解决处理中英文混合文本时的问题,还可以通过提供源码支持用户进行个性化定制和扩展。对于需要进行频繁...
通过上述函数,我们可以轻松地在PB应用程序中实现全角与半角字符之间的相互转换。这对于处理包含多种字符类型的数据非常有用,特别是在处理包含中文和其他东亚语言的文本时。掌握这个函数可以帮助开发者更好地管理...
全角字符在简体中文Windows系统中通常用于汉字和部分标点符号,每个字符占用两个字节,宽度相当于两个半角字符;而半角字符(通常是英文、数字和部分标点)占用一个字节,宽度为一个字符单元。 在描述中提到的“VS...
在.NET框架下进行编程时,有时我们可能会遇到输入法在英文(半角)和中文(全角)状态之间切换的问题,这可能导致字符处理时出现不一致的情况,尤其是在处理字符串长度、格式化输出或数据校验时。"NET全角变半角补丁...
转换程序的核心就在于将这些值进行映射,将全角数字转换成半角数字,或者反之。 在提供的压缩包文件"SBCtoDBC"中,我们可以推测它包含了一个用于进行全角到半角(SBC,Single Byte Character,通常指半角)和半角到...
然而,在使用中文输入法时,回车可能会先执行全角到半角的转换,然后再移动光标,这可能不符合用户的使用习惯。 要自定义此行为,开发者可以重写控件的`ProcessCmdKey`方法,捕获回车键并按需处理。如果希望回车键...
在中文输入法中,全角字符常用于汉字和一些特殊符号,而半角字符则用于英文和数字等。 全角转半角的过程主要涉及字符编码的转换,这是因为全角字符在Unicode或GB2312等编码体系中使用,而半角字符在ASCII编码中使用...
特别是在东亚语言环境中(如中文、日文、韩文等),这种转换对于文本处理至关重要。 #### 全角与半角的概念 1. **全角字符**:全角字符主要指在东亚语言环境中使用的字符类型,它们通常占据两个字节的位置(即一个...
根据给定文件的信息,我们可以总结出以下详细的IT知识点: ### C# 实现全角字符转换成半角...总之,通过上述方法可以有效地实现全角字符到半角字符的转换,这对于处理包含中文或其他亚洲语言的应用程序来说非常重要。
`转全角半角(C#,VB_NET) - RubyPdf 的中文博客 - 博客园.htm`、`C#中直接调用VB_NET的函数,兼论半角与全角、简繁体中文互相转化 - 空军 - 博客园.htm`等文章则深入探讨了全角半角转换以及跨语言调用的具体实现。...
在简体中文环境中,全角字符通常用于汉字,每个全角字符占用两个字节,并且在屏幕上占一个全宽位置。而半角字符,如英文和数字,每个占用一个字节,且在屏幕上的宽度仅为全角字符的一半。 在DELPHI编程中,处理这种...
全角字符(全宽度字符)主要用于中文环境,每个字符占据两个字节,并在屏幕上占据一个全宽的位置。而半角字符(半宽度字符)主要用于英文和数字,每个字符占一个字节,显示时宽度为全角字符的一半。在处理混合语言的...
在中文环境下,全角字符常用于输入汉字、标点符号以及一些特殊字符,而半角字符通常用于英文、数字和基本的标点。 以下是对标题和描述中提到的知识点的详细解释: 1. **判断全角和半角** - **判断半角**:在C#中...