`

unicode 解码

    博客分类:
  • Java
阅读更多

1,如何把Unicode转化为正常字符呢?

/**
	 * 把unicode转化为中文
	 * @param str
	 * @return
	 */
	public static String unicodeToChinese(String str) {
		if (IsChineseUtil.isHasChinses2(str))//判断是否有中文字符
			return str;
		if (str.indexOf("\\u") == -1 || str == null || "".equals(str.trim())) {/*若不是unicode,则直接返回*/
			return str.replaceAll("\\\\ ", " ");//删掉英文中的\,such as "default\ value1"
			/* 主要是针对 zk 中的国际化问题 */
		}
		StringBuffer sb = new StringBuffer();
		if(!str.startsWith("\\u")){/*若开头不是unicode,如“abc\u4e2d\u56fd” */
			int index=str.indexOf("\\u");
			sb.append(str.substring(0, index));
			str=str.substring(index);
		}
		if (str.endsWith(":")) /*如“\u4e2d\u56fd:” */{
			str = str.substring(0, str.length() - 1);
		}
		String[] chs = str.trim().split("\\\\u");
		
		for (int i = 0; i < chs.length; i++) {
			String ch = chs[i].trim();
			if (ch != null && !"".equals(ch)) {
				int length_ch=ch.length();
				if(length_ch>4){
					length_ch=4;
				}//中文的长度是4,英文的长度是2
				sb.append((char) Integer.parseInt(ch.substring(0, length_ch), 16));//按照十六进制解析
				if (ch.length() > 4) {
					sb.append(ch.substring(4));
				}
			}
		}
		return sb.toString();
	}

应用:

selectContent=Conversion.unicodeToChinese(selectContent);

  

 依赖的方法:

    public static boolean isHasChinses2(String str)
    {
        String encodeName = "UTF-8";
        char[] chars = str.toCharArray();
        for (int i = 0; i < chars.length; i++)
        {
            try
            {
                char c = chars[i];
                int leng = getEncodeLength(c, encodeName);
                //                System.out.println(singleStr + "\t" + leng);
                if (leng == 9)//表示是中文字符
                {
//                    System.out.println("有中文");
                    return true;
                }
            }
            catch (UnsupportedEncodingException e)
            {
                e.printStackTrace();
            }
            catch (MyException e)
            {
                e.printStackTrace();
            }
        }
        return false;
    }

    public static int getEncodeLength(String str, String encodeName)
            throws MyException, UnsupportedEncodingException
    {//返回值为9 的话,则说明有中文。
        if (str.length() != 1)
        {
            throw new MyException("超过一个字符");
        }
        String encod = URLEncoder.encode(str, "UTF-8");
        return encod.length();
    }

    public static int getEncodeLength(char c, String encodeName)
            throws MyException, UnsupportedEncodingException
    {//返回值为9 的话,则说明有中文。
        return getEncodeLength(String.valueOf(c), encodeName);
    }

 

 

  • 大小: 150 KB
1
1
分享到:
评论
1 楼 hw1287789687 2015-09-30  
所在类:com.kunlunsoft.unicode2chinese.Conversion
源代码:http://pan.baidu.com/s/1bn2UK15

相关推荐

    unicode解码器 v2.0

    《Unicode解码器v2.0:从代码到中文的桥梁》 在信息技术领域,字符编码扮演着至关重要的角色,尤其是在跨平台、多语言的环境中。Unicode,作为全球广泛采用的字符编码标准,旨在解决不同编码系统之间的兼容性问题。...

    Unicode解码编码_unicode解码_unincode转换_Unicode解码编码_源码

    7. **Unicode解码编码工具**:提到的"Unicode解码编码"项目可能是一个工具或者代码库,用于帮助开发者方便地进行Unicode编码和解码的转换。`.sln`和`.suo`是Visual Studio项目和用户选项文件,而未指定扩展名的文件...

    unicode编码与解码

    Javascript中实现unicode编码与解码功能,两个小测试函数。

    .net反编译器Reflector 5.1.4(打包多个插件,UniCode解码器)

    .net反编译器Reflector 5.1.4 最新版本,包括等FileDisassembler,FileGenerator,SQL2005Browser,SilverlightLoader,CodeSearch,BizTalkDisassembler多个插件,代码分析学习的利器,还包括UniCode解码器

    js unicode加解码

    用于字符串的unicode转换,例如:"你好!" ---&gt; "\u4f60\u597d\uff01

    php制作unicode解码工具(unicode编码转换器)代码分享

    ### PHP 制作 Unicode 解码工具 (Unicode 编码转换器) 代码解析与知识点 #### 一、Unicode 编码简介 Unicode 是一种国际字符集标准,旨在为所有语言中的字符提供统一的编码方式。它支持世界上几乎所有的书写系统,...

    UnicodeCode编码转换成字符串编码的C#类

    UnicodeCode编码转换成字符串编码的C#类 \uA054\uA055 =&gt; "中文

    UniEncoder解码库-可以快速解码和编码

    常见的编码方式有ASCII、Unicode(如UTF-8、UTF-16)和Base64等。 - **解码**:与编码相反,它是将已编码的数据还原为原始形式的过程。确保正确解码的关键在于知道数据最初是如何编码的。 2. **C#中的编码和解码**...

    C#字串与Unicode互相转换方法

    ### C# 字串与 Unicode 互相转换方法 在软件开发过程中,经常需要处理不同编码格式的数据,其中 Unicode 是一种常见的字符编码方式,它为每个字符分配一个唯一的数字(即码点),支持世界上几乎所有的书写系统。C# ...

    UNICODE_2.00

    描述中提到的“UNICODE/8bit/7bit 解码工具”是指用于处理8位和7位数据流的Unicode解码软件。在计算机系统中,8位和7位通常指的是ASCII编码,它是最基础的字符编码,只覆盖了128个基本的拉丁字符。当ASCII数据需要...

    易语言-Unicode编码解码.e

    这个“易语言-Unicode编码解码.e”文件显然是一个易语言编写的应用程序或例程,专门用于处理Unicode编码和解码的问题。 Unicode是一种广泛使用的字符编码标准,它为世界上几乎所有的字符提供了唯一的数字表示,包括...

    utfdecode:Unicode解码器,编码器和调试器命令行工具

    **utfdecode:Unicode解码器、编码器与调试器** `utfdecode` 是一个功能强大的命令行工具,专为处理Unicode编码而设计。它能够帮助开发者和用户进行Unicode字符的解码、编码以及调试工作。在处理涉及多语言文本或者...

    汉字跟Unicode 互相 转化 C# 代码

    在编程领域,尤其是在处理字符编码的时候,理解和操作汉字与Unicode之间的转换是非常重要的。Unicode是一种国际标准,它为世界上几乎所有的字符提供了一个唯一的数字表示,包括汉字。C#是一种广泛使用的编程语言,它...

    js unicode 转换工具

    2. Unicode解码: - 字符串中的`\u`转义序列在解析时会被自动解码为相应的Unicode字符。 - `unescape()`函数:尽管不推荐,但`unescape()`可以用来解码通过百分号 `%` 表示的Unicode值。例如,`unescape("%u0041")...

    Notepad++(UNICODE)简体中文

    在Notepad++中,"UNICODE"指的是UTF-16编码,这是一种广泛使用的Unicode实现方式,能够处理世界上几乎所有的文字系统。通过使用UNICODE,Notepad++能够正确地显示和保存包含中文字符的文件,这对于中文开发者来说...

    ajax使用示例-unicode转换中文

    总结来说,这个"ajax_example"项目提供了一个清晰的实例,展示了如何在PHP环境中利用Ajax技术处理Unicode编码的中文字符,同时介绍了Ajax的基本使用和PHP的Unicode解码方法。对于学习Web开发,特别是前后端交互和...

    Editplus设置json格式化(支持unicode转换)

    为了在`EditPlus`中正确显示这些字符,我们需要确保编辑器支持Unicode解码。在`set.txt`文件中,可能包含了对`EditPlus`的配置设置,比如设置编码格式为UTF-8,这样就能正确识别并显示Unicode字符了。 配置步骤大致...

    Unicode转码

    为您提供ASCII与Unicode互转,Unicode与中文互转,在文本框里输入要转换的内容,然后点击要转换的类型按钮,转换完成后即可看到对应的内容

    C# Http 编码解码示例代码

    在描述中提到的“各种解码方式”,可能包括URL解码、Unicode解码等。在C#中,URL解码通常使用`Uri.UnescapeDataString()`方法,它将百分号编码的字符串还原为原始形式。此方法会识别并恢复已编码的字符。 除了基本...

Global site tag (gtag.js) - Google Analytics