java汉字unicode
Ⅰ java 中常用汉字 的unicode 码范围是多少到多少
常用汉字 的unicode 码范围是:u4e00-u9fa5,下面一个例子是把中英文文档中的汉字提取出来的简单例子:
publicclassDrawEnglish
{
privatestaticStringdraw(Stringcontent)
{
StringBufferenglish=newStringBuffer();
Stringregex="[u4e00-u9fa5。,?”“《》:!——-、]";
Patternpattern=Pattern.compile(regex);
Matchermatcher=pattern.matcher(content);
while(matcher.find())
{
Stringtemp=matcher.group();
english.append(temp);
}
returnenglish.toString();
}
publicstaticvoiddrawEnglish(Stringpath)
{
FileInputStreamfr;
BufferedReaderbr;
FileWriterfw;
BufferedWriterbw=null;
try
{
fr=newFileInputStream(path);
br=newBufferedReader(newInputStreamReader(fr,"gb2312"));
fw=newFileWriter("new1.txt");
bw=newBufferedWriter(fw);
Stringstr=null;
StringBuffersb=newStringBuffer();
while((str=br.readLine())!=null)
{
sb.append(str+" ");
}
Stringtemp=draw(sb.toString());
bw.write(temp);
}catch(FileNotFoundExceptione)
{
e.printStackTrace();
}catch(IOExceptione)
{
e.printStackTrace();
}
finally
{
try
{
if(bw!=null)bw.close();
}catch(IOExceptione)
{
e.printStackTrace();
}
}
}
publicstaticvoidmain(String[]args)
{
drawEnglish("draw1.txt");
}
}
Ⅱ 编写JAVA程序输出中文字的unicode编码
我写的,你试试,你可以把它改写成循环的,可以一直把字符的Unicode输出,完善后发给我哈:
import java.io.*;
public class FindUnicode {
public static void main(String[] args) throws IOException{
InputStreamReader read = new InputStreamReader (System.in);
int ch = read.read();
System.out.print("\\u"+Integer.toHexString(ch));
read.close();
}
}
Ⅲ Java如何将一段汉字变成unicode码
publicclassT{
publicstaticvoidmain(String[]args){
Strings="我爱你";
System.out.println(string2Unicode(s));
}
(Stringstring){
StringBufferunicode=newStringBuffer();
for(inti=0;i<string.length();i++){
//取出每一个字符
charc=string.charAt(i);
//转换为unicode
unicode.append("\u"+Integer.toHexString(c));
}
returnunicode.toString();
}
}
Ⅳ 用java如何把unicode码转成汉字
java中将unicode码转换成汉字的方式是直接使用string类型,打印即可:
Stringascii="u4f01u4e1a";//这两个unicode码就是企业的
System.out.println(ascii);//打印出来
运行结果:
企业
Unicode只有一个字符集,中、日、韩的三种文字占用了Unicode中0x3000到0x9FFF的部分 Unicode目前普遍采用的是UCS-2,它用两个字节来编码一个字符, 比如汉字"经"的编码是0x7ECF,注意字符编码一般用十六进制来 表示,为了与十进制区分,十六进制以0x开头,0x7ECF转换成十进制 就是32463,UCS-2用两个字节来编码字符,两个字节就是16位二进制, 2的16次方等于65536,所以UCS-2最多能编码65536个字符。
Ⅳ Java中,内存的字符表示的是Java的unicode编码系统中的文件表示的是系统的默认编码
1、Java中,字符在内存中是用unicode编码的
2、系统中的文件默认是用默认编码编码的。解释一下:对于每个语言/区域,比如中文/中国,中文/台湾,英语/美国,英语/英国,系统都指定一个特定的编码方式,当读取或保存文件时,如果不指定要使用何种编码方式或读取时在文件中找不到编码方式的识别码(姑且这么叫吧,作用是帮助识别文件的编码),就会使用这个特定的编码方式,这就叫默认以默认编码方式编码或解码。
如果文件中存在一个utf8编码的文件,Reader类读入它时,为什么要使用GBK来转换呢?因为它笨,它只会使用默认编码来转换,而此系统的默认编码恰好是GBK,如果默认编码是其它的,它也会选择那个对应的默认编码来转换,不要以为Reader类就不犯错。所以,使用Java的io类库时,有时需要自己指定编码,不要以为Java类为你搞定了一切。回头想想,Reader类表现得有点欠佳,这也很正常。毕竟,这世上有那么多的编码方式,Reader类怎么能尽知你的文件使用的是哪一个,即便它都知道,也不可能有能力处理这么多的编码方式啊。所以它不管对错,只认一种——默认编码方式,负责选择正确的编码方式,那是软件开发者和这个文件使用者的责任。
Ⅵ java怎么把汉字转化成unicode编码
中文转换成Unicode编码和Unicode编码转换成中文
importjava.util.Properties;
publicclassTest{
publicstaticvoidmain(String[]args){
Strings="简介";
Stringtt=gbEncoding(s);//Stringtt1="你好";
System.out.println(decodeUnicode("\u7b80\u4ecb"));//System.out.println(decodeUnicode(tt1));
System.out.println(HTMLDecoder.decode("中国"));
Strings1="u7b80u4ecb";
System.out.println(s.indexOf("\"));
}
publicstaticStringgbEncoding(finalStringgbString){
char[]utfBytes=gbString.toCharArray();
StringunicodeBytes="";
for(intbyteIndex=0;byteIndex<utfBytes.length;byteIndex++){
StringhexB=Integer.toHexString(utfBytes[byteIndex]);
if(hexB.length()<=2){
hexB="00"+hexB;
}
unicodeBytes=unicodeBytes+"\u"+hexB;
}
System.out.println("unicodeBytesis:"+unicodeBytes);
returnunicodeBytes;}
(finalStringdataStr){
intstart=0;
intend=0;
finalStringBufferbuffer=newStringBuffer();
while(start>-1){
end=dataStr.indexOf("\u",start+2);
StringcharStr="";
if(end==-1){
charStr=dataStr.substring(start+2,dataStr.length());
}else{
charStr=dataStr.substring(start+2,end);
}
charletter=(char)Integer.parseInt(charStr,16);//16进制parse整形字符串。
buffer.append(newCharacter(letter).toString());
start=end;
}
returnbuffer.toString();
}}
}
}
}