`

中文转化为unicode

阅读更多
原文地址:
http://www.cnitblog.com/neatstudio/archive/2006/07/28/14315.html
js

mode="zhuan";
function encode(obj,btn){
   if(mode=="zhuan"){
       obj.value=obj.value.replace(/[^\u0000-\u00FF]/g,function($0){return escape($0).replace(/(%u)(\w{4})/gi,"&#x$2;")});
       btn.value="还原";
       mode="huan";
   }else{
       obj.value=unescape(obj.value.replace(/&#x/g,'%u').replace(/;/g,''));
       btn.value="转化";
       mode="zhuan";
   }
}


JAVA:

//转为unicode
public static void writeUnicode(final DataOutputStream out, final String value)  {
  try {
  final String unicode = gbEncoding( value );
  final byte[] data = unicode.getBytes();
  final int dataLength = data.length;

  System.out.println( "Data Length is: " + dataLength );
  System.out.println( "Data is: " + value );
  out.writeInt( dataLength ); //先写出字符串的长度
  out.write( data, 0, dataLength ); //然后写出转化后的字符串
  } catch (IOException e) {
 
  }
  }

 
  public static String gbEncoding( final String gbString ) {
  char[] utfBytes = gbString.toCharArray();
  String unicodeBytes = "";
  for( int byteIndex = 0; byteIndex < utfBytes.length; byteIndex ++ ) {
  String hexB = Integer.toHexString( utfBytes[ byteIndex ] );
  if( hexB.length() <= 2 ) {
  hexB = "00" + hexB;
  }
  unicodeBytes = unicodeBytes + "\\\\u" + hexB;
  }
  System.out.println( "unicodeBytes is: " + unicodeBytes );
  return unicodeBytes;
  }


/** *//*****************************************************
  * 功能介绍:将unicode字符串转为汉字
  * 输入参数:源unicode字符串
  * 输出参数:转换后的字符串
  *****************************************************/
 private String decodeUnicode( final String dataStr ) {
  int start = 0;
  int end = 0;
  final StringBuffer buffer = new StringBuffer();
  while( start > -1 ) {
  end = dataStr.indexOf( "\\\\u", start + 2 );
  String charStr = "";
  if( end == -1 ) {
  charStr = dataStr.substring( start + 2, dataStr.length() );
  } else {
  charStr = dataStr.substring( start + 2, end);
  }
  char letter = (char) Integer.parseInt( charStr, 16 ); // 16进制parse整形字符串。
  buffer.append( new Character( letter ).toString() );
  start = end;
  }
  return buffer.toString();
 }
 


JSP:
/** *//** ToUnicode.java */ 
package com.edgewww.util; 

import java.io.*; 

/** *//** 
* 字符串转换成Unicode码的类 
* @author 栾金奎 jsp@shanghai.com 
* @date 2001-03-05 
*/ 
public class ToUnicode { 

/** *//** 
* 把字符串转换成Unicode码 
* @param strText 待转换的字符串 
* @param code 转换前字符串的编码,如"GBK" 
* @return 转换后的Unicode码字符串 
*/ 
public String toUnicode(String strText,String code) throws UnsupportedEncodingException{ 
  char c; 
  String strRet = "" ; 
  int intAsc; 
  String strHex; 
  strText = new String(strText.getBytes("8859_1"),code); 
  for ( int i = 0; i < strText.length(); i++ ){ 
    c = strText.charAt(i); 
    intAsc = (int)c; 
    if(intAsc>128){ 
      strHex = Integer.toHexString(intAsc); 
      strRet = strRet + "&#x" + strHex+";"; 
    } 
    else{ 
      strRet = strRet + c; 
    } 
  } 
  return strRet ; 
} 

} 

/** *//** 应用举例 */ 
/** *//** gbk2Unicode.jsp */ 
<meta http-equiv="Content-Type" content="text/html; charset=big5"> 
<jsp:useBean id="g2u" scope="session" class="com.edgewww.util.ToUnicode"/> 
<% String lang = "这是简体中文"; %> 
<br> 
<%=lang %> 
<br> 
<%=g2u.toUnicode(lang,"GBK") %>
分享到:
评论

相关推荐

    中文转化为unicode格式的方法类

    总结来说,将中文转化为 Unicode 格式是通过理解 Unicode 编码原理,利用 Java 提供的相关 API 完成的。`unicodeConvert.java` 类是实现这一功能的代码载体,它可以方便地在各种场景下进行中文字符与 Unicode 之间的...

    把中文转化为Unicode

    在处理中文字符时,将汉字转化为Unicode编码,特别是在编写正则表达式进行文本处理时,是非常常见且重要的操作。下面我们将深入探讨这个话题。 首先,Unicode编码的核心理念是为每个独特的字符分配一个唯一的数字,...

    使用javascript将汉字转化成UNICODE编码

    本篇文章将深入探讨如何使用JavaScript将汉字转化为UNICODE编码,并提供相关工具的使用方法。 一、Unicode编码基础知识 Unicode是一种国际标准,用于表示世界上几乎所有的字符集,包括汉字。它使用一个数字来代表每...

    中文转化unicoder码的方法

    本文将详细介绍如何将中文转化为Unicode编码,以及这对中文数据通信和显示的开发有何帮助。 1. Unicode编码介绍: Unicode是一个包含几乎世界上所有语言字符的编码系统,它为每个字符分配了一个唯一的数字,称为码...

    汉字转换为unicode 编码

    将汉字转化为Unicode编码,有些文件不支持中文,鼻血转换,如js文件

    汉字unicode转换器

    编码是指将汉字转化为Unicode的过程,解码则是将Unicode编码还原成可读的汉字。在编码过程中,转换器会查找特定汉字在Unicode字符集中的位置,并将其对应的16进制数值转换成Unicode编码形式。例如,汉字“汉”在...

    汉字转化Unicode工具源代码

    这个“汉字转化Unicode工具源代码”就是专门用于将汉字转换成Unicode编码的软件开发资源。 源代码通常是程序员用编程语言编写的程序文本,通过编译或解释后可以生成可执行程序。在这个项目中,我们可以看到一系列与...

    字符转化为UNICODE码

    Unicode码,全称为统一码或万国码,是一种在计算机科学领域广泛使用的字符编码标准,旨在为世界上所有的字符提供一个唯一的、统一的数字表示。Unicode的出现解决了早期各种字符编码系统(如ASCII、GB2312等)无法...

    Unicode码转中文和中文转Unicode码的最简便的方法

    Unicode码是一种国际标准字符编码,它能够表示世界上几乎所有的文字和符号,包括中文。Unicode码以16位或32位二进制形式存储每个字符,确保了不同语言间的兼容性和可交换性。中文转Unicode码和Unicode码转中文的过程...

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

    本文将深入探讨汉字与Unicode在C#中的相互转化,并提供相关的代码示例。 首先,我们来理解一下汉字与Unicode的关系。汉字是中文的字符,其在计算机中存储通常有两种主要方式:GBK(一种针对简体中文的扩展GBK编码)...

    汉字笔画笔顺Unicode和GB码数据库(20902汉字).rar

    在信息技术领域,为了计算机能够识别和处理汉字,需要将汉字转化为特定的编码形式。本资源“汉字笔画笔顺Unicode和GB码数据库(20902汉字).rar”提供了关于汉字笔画笔顺以及Unicode和GB编码的数据,对于研究汉字信息...

    汉字与unicode编码(十六进制)对照表

    汉字是中文书写系统的核心,是中华文化传承的重要载体。在计算机处理汉字时,就需要用到特定的编码方式来表示这些字符。Unicode(统一码)是一种全球通用的字符编码标准,它为世界上几乎所有的文字提供了一个唯一的...

    字符串处理类:将GBK,UTF8字符串转化为Unicode编码的php类库.zip

    Unicode是一种广泛使用的字符编码标准,它包含了世界上几乎所有的字符,包括汉字、拉丁字母、希腊字母等。它的主要特点是用一个统一的编码来表示各种语言的字符,避免了编码不一致导致的问题。在PHP中,Unicode编码...

    汉字转 Unicode 码软件

    在 GPRS 环境下,汉字通常需要转化为特定编码,如 Unicode,以便于在网络上传输。 TC35I 是西门子推出的一款 GSM/GPRS 模块,常用于开发嵌入式通信系统。这种模块允许设备通过无线网络发送和接收数据,包括短信。在...

    汉字转化成二进制的方法

    了解并掌握汉字转化为二进制的方法,对于进行中文信息处理、编程、网络传输以及数据存储等任务都极其重要。通过深入理解这些知识点,开发者可以更好地处理涉及汉字的数据,确保其在不同环境下的正确性和一致性。

    Unicode 中文转换工具

    有的时候,遇见中文都被转化成了Unicode内码,看着很不爽,于是写了这么个小工具,用来将Unicode内码转换为中文,可以实现整篇的转换。 另外,此工具也可以将中英文转换为Unicode内码(您可以选择是否将英文转换)...

    汉字与unicode转换工具

    首先,通过GBK解码器将GBK编码的字节序列转化为码点,然后再用Unicode编码器将这些码点转换成UTF-8或其他Unicode编码格式的字节序列。 Unicode编码有多种实现方式,其中最常用的是UTF-8、UTF-16和UTF-32。UTF-8是最...

    常见汉字的Unicode和GB2312映射表

    在开发stm32时,从网上接收到utf8的数据流中包含汉字,如果要正确的在串口中打印汉字的话,就要把utf8(一个汉字3字节)转为GB2312(一个汉字2字节),这个过程不能直接转化,因为GB2312只有和16位的Unicode有映射,...

Global site tag (gtag.js) - Google Analytics