`
ddandyy
  • 浏览: 214557 次
  • 性别: Icon_minigender_1
  • 来自: 目前上海
社区版块
存档分类
最新评论

半角全角

阅读更多
	public static String halfToFullWidth(Object halfWidthObj) throws ConfigurationException {		
		String halfStr = "";
		StringBuffer fullStr = new StringBuffer();
		if (null == halfWidthObj) {
			return "";
		}
		else {
			halfStr = halfWidthObj.toString();
		}		
		getConfig();
		
		// half2fullファイルから全角文字を取得する
		for (int i = 0; i < halfStr.length(); i++) {
			char indexChr = halfStr.charAt(i);
			if ((" ").equals(String.valueOf(indexChr))) {
				fullStr.append("\u3000");
				continue;
			}

			if (("=").equals(String.valueOf(indexChr))) {
				fullStr.append("\uff1d");
				continue;
			}
			
			if (("#").equals(String.valueOf(indexChr))) {
				fullStr.append("\uff03");
				continue;
			}
			
			String fullStrOne = (String) config.getProperty(String.valueOf(indexChr));
			if (i < halfStr.length() - 1) {				
				String fullStrTwo = (String) config.getProperty(String.valueOf(indexChr)+String.valueOf(halfStr.charAt(i+1)));
				if (fullStrTwo != null) {
					fullStrOne = fullStrTwo;
					i++;
				}
			}
			if (null != fullStrOne && !("").equals(fullStrOne)) {
				fullStr.append(fullStrOne);
			}
			else {
				fullStr.append(String.valueOf(indexChr));
			}

		}
		return fullStr.toString();
	}		



以下JS来自 http://www.trickpalace.net/tools/width.htm
引用
<HTML>
<!--***************************************************************************
TrickPalace
全角⇔半角変換 - string tools - tools - TrickPalace
Copyright(C) 2002 Wraith. All rights reserved.
Generated by PalaceMaster.
****************************************************************************-->
<!--Tab幅を4文字に設定して表示させてください。-->
<HEAD>
<TITLE>全角⇔半角変換 - string tools - tools - TrickPalace</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=shift_jis">
<META name="generator" content="PalaceMaster">
<META name="author" content="Wraith the Trickster">
<META name="copyright" content="Copyright(C) 2002 Wraith the Trickster">
<LINK rel="StyleSheet" type="text/css" href="/palace.css">
<!--[if IE]><LINK rel="StyleSheet" type="text/css" href="/palacex.css" media="screen"><![endif]-->
</HEAD>
<BODY><A name="Head"></A>

<!--***************************************************************************
Header Part
****************************************************************************-->
<DIV class="header">
<A class="title" href="/">TrickPalace</A>
<OL class="location"><LI><A href="/">http://www.trickpalace.net/</A></LI><LI><A href="/tools/">tools/</A></LI><LI>width.htm</LI></OL>
</DIV>

<!--***************************************************************************
Body Part
****************************************************************************-->
<DIV class="body">
<H1>string tools</H1>

<H2>全角⇔半角変換</H2>

<SCRIPT language="JavaScript"><!--
// --></SCRIPT>
<SCRIPT language="VBScript"><!--

' 全角半角変換用文字列定数

Const FullKana = "。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゛゜"
Const HalfKana = "。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゙゚"

Const FullKana2 = "ヴガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ"
Const HalfKana2 = "ヴガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ"

Const FullAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
Const HalfAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"

Const FullNumber = "0123456789"
Const HalfNumber = "0123456789"

Const FullSymbol = " !”#$%&’()*+,-./:;<=>?@[¥]^_‘{|}~"
Const HalfSymbol = " !""#$%&'()*+,-./:;<=>?@[\]^_`{|}~"

' 大文字小文字変換用文字列定数

Const UpperCase = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ"
Const LowerCase = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"

' ひらがなカタカナ変換用文字列定数

Const HiraKana = "をぁぃぅぇぉゃゅょっあいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわんゐゑ"
Const HiraKana2 = "がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽ"
Const HiraKana3 = "う゛"
Const KataKana = "ヲァィゥェォャュョッアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワンヰヱ"
Const KataKana2 = "ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ"
Const KataKana3 = "ヴ"
Const KataKana4 = "ヲァィゥェォャュョッアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン"
Const KataKana5 = "ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ"

Function TranslateString(OriginalString, strSource, strDestination)
Dim strResult
strResult = OriginalString

Dim nLength
nLength = Len(strSource)
Dim i
For i = 1 To nLength
strResult = Replace(strResult, Mid(strSource, i, 1), Mid(strDestination, i, 1))
Next

TranslateString = strResult
End Function

Function EncodeWKana(OriginalString)
Dim strResult
strResult = OriginalString
If chkWKana.checked Then

strResult = TranslateString(strResult, FullKana, HalfKana)

Dim nLength
nLength = Len(FullKana2)
Dim i
For i = 1 To nLength
strResult = Replace(strResult, Mid(FullKana2, i, 1), Mid(HalfKana2, ((i -1) *2) +1, 2))
Next

End If
EncodeWKana = strResult
End Function

Function EncodeWAlphabet(OriginalString)
Dim strResult
strResult = OriginalString
If chkWAlphabet.checked Then
strResult = TranslateString(strResult, FullAlphabet, HalfAlphabet)
End If
EncodeWAlphabet = strResult
End Function

Function EncodeWNumber(OriginalString)
Dim strResult
strResult = OriginalString
If chkWNumber.checked Then
strResult = TranslateString(strResult, FullNumber, HalfNumber)
End If
EncodeWNumber = strResult
End Function

Function EncodeWSymbol(OriginalString)
Dim strResult
strResult = OriginalString
If chkWSymbol.checked Then
strResult = TranslateString(strResult, FullSymbol, HalfSymbol)
End If
EncodeWSymbol = strResult
End Function

Function EncodeCase(OriginalString)
Dim strResult
strResult = OriginalString
If chkCase.checked Then
strResult = TranslateString(strResult, UpperCase, LowerCase)
End If
EncodeCase = strResult
End Function

Function EncodeKana(OriginalString)
Dim strResult
strResult = OriginalString
If chkKana.checked Then

strResult = Replace(strResult, HiraKana3, KanaKana3)
strResult = TranslateString(strResult, HiraKana, KataKana)
strResult = TranslateString(strResult, HiraKana2, KataKana2)

End If
EncodeKana = strResult
End Function

Function DecodeWKana(OriginalString)
Dim strResult
strResult = OriginalString
If chkWKana.checked Then

Dim nLength
nLength = Len(FullKana2)
Dim i
For i = 1 To nLength
strResult = Replace(strResult, Mid(HalfKana2, ((i -1) *2) +1, 2), Mid(FullKana2, i, 1))
Next

strResult = TranslateString(strResult, HalfKana, FullKana)

End If
DecodeWKana = strResult
End Function

Function DecodeWAlphabet(OriginalString)
Dim strResult
strResult = OriginalString
If chkWAlphabet.checked Then
strResult = TranslateString(strResult, HalfAlphabet, FullAlphabet)
End If
DecodeWAlphabet = strResult
End Function

Function DecodeWNumber(OriginalString)
Dim strResult
strResult = OriginalString
If chkWNumber.checked Then
strResult = TranslateString(strResult, HalfNumber, FullNumber)
End If
DecodeWNumber = strResult
End Function

Function DecodeWSymbol(OriginalString)
Dim strResult
strResult = OriginalString
If chkWSymbol.checked Then
strResult = TranslateString(strResult, HalfSymbol, FullSymbol)
End If
DecodeWSymbol = strResult
End Function

Function DecodeCase(OriginalString)
Dim strResult
strResult = OriginalString
If chkCase.checked Then
strResult = TranslateString(strResult, LowerCase, UpperCase)
End If
DecodeCase = strResult
End Function

Function DecodeKana(OriginalString)
Dim strResult
strResult = OriginalString
If chkKana.checked Then

Dim nLength
nLength = Len(HiraKana2)
Dim i
For i = 1 To nLength
strResult = Replace(strResult, Mid(KataKana5, ((i -1) *2) +1, 2), Mid(HiraKana2, i, 1))
Next

strResult = TranslateString(strResult, KataKana, HiraKana)
strResult = TranslateString(strResult, KataKana2, HiraKana2)
strResult = Replace(strResult, KanaKana3, HiraKana3)
strResult = TranslateString(strResult, KataKana4, HiraKana)

End If
DecodeKana = strResult
End Function

Function EncodeString(OriginalString)
Dim strResult
strResult = OriginalString
strResult = EncodeCase(strResult)
strResult = EncodeKana(strResult)
strResult = EncodeWKana(strResult)
strResult = EncodeWAlphabet(strResult)
strResult = EncodeWNumber(strResult)
strResult = EncodeWSymbol(strResult)
EncodeString = strResult
End Function

Function DecodeString(OriginalString)
Dim strResult
strResult = OriginalString
strResult = DecodeWKana(strResult)
strResult = DecodeWAlphabet(strResult)
strResult = DecodeWNumber(strResult)
strResult = DecodeWSymbol(strResult)
strResult = DecodeCase(strResult)
strResult = DecodeKana(strResult)
DecodeString = strResult
End Function

' --></SCRIPT>
<DIV id="divExchange" style="display:none"></DIV>
<TABLE width="470" align="CENTER">
<TR>
<TD colspan="2">option : </TD>
</TR>
<TR>
<TD colspan="2">
<INPUT TYPE="CHECKBOX" id="chkWKana" checked><label for="chkWKana">カタカナ</label>
<INPUT TYPE="CHECKBOX" id="chkWAlphabet" checked><label for="chkWAlphabet">Alphabet</label>
<INPUT TYPE="CHECKBOX" id="chkWNumber" checked><label for="chkWNumber">数字</label>
<INPUT TYPE="CHECKBOX" id="chkWSymbol" checked><label for="chkWSymbol">記号</label><BR>
<INPUT TYPE="CHECKBOX" id="chkCase"><label for="chkCase">大文字⇔小文字</label>
<INPUT TYPE="CHECKBOX" id="chkKana"><label for="chkKana">ひらがな⇔カタカナ</label>
</TD>
</TR>
<TR>
<TD colspan="2">全角文字列 : </TD>
</TR>
<TR>
<TD colspan="2"><TEXTAREA id="txtDecode" class="TEXT" style="{width:100%;height:120px}" onPropertyChange="btnEscape.disabled=0==txtDecode.value.length">
。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゛゜
。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゙゚
ヴガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ
ヴガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
0123456789
0123456789
 !”#$%&’()*+,-./:;<=>?@[¥]^_‘{|}~
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
をぁぃぅぇぉゃゅょっあいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわんゐゑ
がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽ
う゛
ヲァィゥェォャュョッアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワンヰヱ
ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ

ヲァィゥェォャュョッアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン
ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ
</TEXTAREA></TD>
</TR>
<TR>
<TD><BUTTON id="btnEscape" onClick="txtEncode.value=EncodeString(txtDecode.value);" style="width:100%">▼ 全角→半角変換 ▼</BUTTON></TD>
<TD><BUTTON id="btnUnescape" onClick="txtDecode.value=DecodeString(txtEncode.value);" style="width:100%">▲ 半角→全角変換 ▲</BUTTON></TD>
</TR>
<TR>
<TD colspan="2">半角文字列 : </TD>
</TR>
<TR>
<TD colspan="2"><TEXTAREA id="txtEncode" class="TEXT" style="{width:100%;height:120px}" onPropertyChange="btnUnescape.disabled=0==txtEncode.value.length"></TEXTAREA></TD>
</TR>
</TABLE>

</DIV>

<!--***************************************************************************
Footer Part
****************************************************************************-->
<DIV class="footer">
<A class="title" href="/">TrickPalace</A>
<OL class="location"><LI><A href="/">http://www.trickpalace.net/</A></LI><LI><A href="/tools/">tools/</A></LI><LI>width.htm</LI></OL>
</DIV>

</BODY>
<!--***************************************************************************
□■□■                  Wraith the Trickster                  □■□■
■□■□ ~I'll go with heaven's advantage and fool's wisdom.~ ■□■□
****************************************************************************-->
</HTML>
分享到:
评论

相关推荐

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

    在描述中,我们同样看到"C#365-半角全角转换源代码",这确认了我们的理解,即提供的压缩包中包含C#实现的代码,用于在字符串中进行半角到全角,或者全角到半角的转换。 在实际应用中,半角全角转换有多种用途。例如...

    半角全角批量转换工具

    标题中的“半角全角批量转换工具”指的是一个能够处理这两种字符形式的软件工具。全角字符通常在中文环境下使用,每个字符占用两个字节,包括大部分汉字以及部分特殊符号;而半角字符多见于英文或数字环境,每个字符...

    PB半角全角转换

    通过该函数可自动实现输入字符半角全角进行转换。

    半角全角转换.zip不错的C#WinForm实例源码适合研究学习技术

    半角全角转换.zip不错的C#WinForm实例源码适合研究学习技术半角全角转换.zip不错的C#WinForm实例源码适合研究学习技术 1.适合学生做毕业设计参考模板。 2.适合程序员学习开发研究用 3.适合小公司做项目参考技术使用...

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

    这个压缩包包含两个文件:ReadMe.txt和"半角全角转换",其中ReadMe.txt通常用于提供项目说明或使用指南,而"半角全角转换"可能是C#源代码文件,可能包含了相关的类或函数定义。 在C#中,进行半角和全角字符转换主要...

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

    总结来说,C#中进行半角全角转换主要涉及到字符的Unicode值和相应的转换规则。理解这些规则并编写相应的函数,可以轻松地在半角和全角字符之间进行转换,满足各种文本处理需求。在实际项目中,我们还需要考虑性能...

    基于C++实现中文敏感词过滤,支持特殊符号,半角全角,停顿词,重复词等等,基于trie树算法实现

    【作品名称】:基于C++实现中文敏感词过滤,支持特殊符号,半角全角,停顿词,重复词等等,基于trie树算法实现 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、...

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

    在计算机处理文本时,经常会遇到半角和全角字符的问题。半角字符和全角字符在显示时占用的宽度不同,这在编程中尤其重要,特别是在处理中文字符和英文字符混合的文本时。C#中提供了两个函数,分别用于将半角字符转换...

    Framework2.0半角全角切换补丁

    遇到过中文输入法的半角自动切换成全角的问题,其实这是Framework2.0的一个bug,这个补丁程序将会解决您的烦恼。

    中文转码器可转换简繁和半角全角.rar

    软件介绍: 能够转换文件、转换剪贴板中的文字字符到目标格式;中文简体字/繁体字转换选项:一、不转换;...半角/全角字符转换:一、不转换;二、将半角字符转换为全角字符;三、将全角字符转换为半角字符;

    半角与全角字符的转换

    ### 半角与全角字符的转换 #### 知识点概述 在计算机科学与编程领域,字符编码是一项基础而重要的技术。字符编码涉及到字符如何被表示为二进制数字,以便于计算机处理和存储。根据不同的编码方式,相同的字符可能...

    半角转全角perl代码

    自然语言处理中的中文半角全角转换代码,可以用来自然语言

    全角和半角的区别.docx

    全角和半角的区别 全角和半角是计算机编程和输入法中两个重要概念,它们的区别对计算机用户和编程人员来说非常重要。在本文中,我们将详细介绍全角和半角的概念、区别和应用场景。 什么是全角和半角? 全角是指一...

    asp.net 半角全角转化工具

    在编程领域,尤其是在处理字符编码和显示时,经常会遇到半角和...总之,这些半角全角转化工具在ASP.NET开发中起到了重要的作用,使得开发者能够灵活地处理各种字符类型的文本,以满足各种界面显示和数据处理的需求。

    Ruby 中关于日文转UTF-8及半角全角转换的技巧

    1.日文转UTF-8 Iconv.new(‘cp932’, ‘utf-8’)与...半角全角转换 看下面的代码: require “jcode” $cov.iconv(year.to_s.tr(‘0-9’, ‘0-9’) + ‘年’ + month.to_s.tr(‘0-9’, ‘0-9’) + ‘月度作業報告書

    学生作业 C#实例源码 半角全角转换.rar

    免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,...

    半角全角相互转换的js函数

    由于中日韩等语言的文本通常包含大量特殊字符,因此半角全角转换对于多语言支持和文本兼容性来说至关重要。 这些函数虽然在示例中是用JavaScript实现的,但类似的逻辑可以用其他编程语言实现。转换规则和实现方法的...

    Excel-VBA宏编程实例源代码-常规函数应用-数字半角与全角转换.zip

    Sub 数字半角全角转换() Dim cell As Range For Each cell In Selection If IsNumeric(cell.Value) Then ' 将全角数字转换为半角 cell.Value = Application.WorksheetFunction.Chr(Asc(cell.Value) - 65248) ...

    数字半角与全角转换.xlsx源码EXCEL VBA宏编程xlsx实例代码下载

    数字半角与全角转换.xlsx源码EXCEL VBA宏编程xlsx实例代码下载数字半角与全角转换.xlsx源码EXCEL VBA宏编程xlsx实例代码下载数字半角与全角转换.xlsx源码EXCEL VBA宏编程xlsx实例代码下载数字半角与全角转换.xlsx...

    日文全角半角转化

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

Global site tag (gtag.js) - Google Analytics