导航:首页 > 编程大全 > java中文简繁体转换工具

java中文简繁体转换工具

发布时间:2024-12-27 17:21:04

1. 在java中,怎么把繁体字转化为简体字

实现思路一:采用字符串的方式实现
[java]viewplain
packagecom.bzu.converter;
importjava.util.Scanner;

/**
*思路一:采用字符串的方式实现
*/
publicclassJianFanConvert1{
publicstaticfinalStringjianti="万与丑专业丛东丝";
publicstaticfinalStringfanti="万与丑专业丛东丝";
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System.in);
System.out.println("请输入你想转换的句子");
Stringwords=input.next();
for(inti=0;i<words.length();i++){
chartempChar=words.charAt(i);
intposition=jianti.indexOf(tempChar);//此方法调用时间复杂度为O(n)
charfantiChar;
if(position==-1){
fantiChar=tempChar;
}else{
fantiChar=fanti.charAt(position);
}
System.out.print(fantiChar);
}
}
}
分析上述实现,时间复杂度为O(n*n),当问题规模扩大时会非常耗时。
实现思路二:采用哈希算法实现
1.哈希方法
哈希方法在就是在键和值之间建立一个确定的对应函数关系hash(),就是key向value的换算关系,使得每一个键与结构中的一个唯一的存储位置相对应:值的存储位置=hash(键)即Value的位置=hash(key)
例如有一组“键值对”:<5,”tom”>、<8,”Jane”>、<12,”Bit”>、<17,”Lily”>、<20,”sunny”>,我们按照如下哈希函数对键进行计算:hash(x)=x%17+3,得出如下结果:hash(5)=8、hash(8)=11、hash(12)=15、hash(17)=3、hash(20)=6。
我们把<5,”tom”>、<8,”Jane”>、<12,”Bit”>、<17,”Lily”>、<20,”sunny”>分别放到地址为8、11、15、3、6的位置上。当要检索17对应的值的时候,只要首先计算17的哈希值为3,然后到地址为3的地方去取数据就可以找到17对应的数据是“Lily”了。
使用哈希方法,查询的时间复杂度为O(1),能够直接定位其位置,大大加快数据的查询速度。
2.哈希表
将数据采用哈希算法进行保存的数据结构就是哈希表,常见操作put、get、remove。
Java中的HashMap使用(Java内置的哈希表数据结构)
HashMap的主要方法
intsize():得到Map中“键-值对”的数量
booleanisEmpty():Map是否是空的,也就是是否不含有任何“键-值对”
booleancontainsKey(Objectkey):Map中是否含有以key为键的“键-值对”
booleancontainsValue(Objectvalue):Map中是否含有以value为值的“键-值对”
Objectget(Objectkey):从Map中得到以key为键的值,如果Map中不含有以key为键的“键-值对”则返回null
Objectput(Objectkey,Objectvalue):向Map中存储以key为键、value为值的“键-值对”
Objectremove(Objectkey):从Map中移除以key为键的“键-值对”
voidclear():清除所有“键-值对”
SetkeySet():得到所有的键
Collectionvalues():得到所有的值
SetentrySet():得到所有的“键-值对”,Set中的类型是Map.Entry

[java]viewplain
packagecom.bzu.converter;
importjava.util.HashMap;
importjava.util.Map;
importjava.util.Scanner;

/**
*思路二:采用哈希算法实现
*/
publicclassJianFanConvert2{
publicstaticfinalStringjianti="万与丑专业丛东丝";
publicstaticfinalStringfanti="万与丑专业丛东丝";

publicstaticvoidmain(String[]args){
Map<Character,Character>map=newHashMap<Character,Character>();
for(inti=0;i<jianti.length();i++){
map.put(jianti.charAt(i),fanti.charAt(i));
}
Scannerinput=newScanner(System.in);
System.out.println("请输入你想转换的句子");
Stringwords=input.next();
/**
*为了测试随着问题规模的扩大用时
*/
for(inti=0;i<10;i++){
words=words+words;
}

longbegin=System.currentTimeMillis();
for(inti=0;i<words.length();i++){
chartempChar=words.charAt(i);
Charactercharacter=map.get(tempChar);
charfantiChar;
if(character==null){
fantiChar=tempChar;
}else{
fantiChar=character;
}
System.out.print(fantiChar);
}
longend=System.currentTimeMillis();
System.out.println(" 用时:"+(end-begin));
}
}
分析上述算法实现,时间复杂度变为o(n)
问题探讨:
为什么算法复杂度由O(n*n)变成O(n),但是实际执行时间没有明显的变化?
print,数据在CPU、内存中运算都非常快,一旦与外设(打印机、网络(网卡)、显示设备(显卡))交换数据,速度就会慢很多

来自

junjunguoguo的专栏

2. 网站中文转换英文的java代码

同意楼上的,繁体的这个功能有,是通过JS来实现的,你可以在网上搜下专,应该可以搜到。
英文的这属个功能是没有的,除非你对应于每一个中文页面再写一个相对应的英文。网上的一些这样的功能(如遨游浏览器就有这个功能),但翻译十分的不准确,因为电脑始终是死的。

3. java 实现 简体gb 到 繁体 再到 big5码 的转换

不会写main 怎么会问这个问题呢

4. java写文件时写入TXT的都是中文都是繁体字,怎么换成简体字,UTF-8,GBK,GB2312都试过了都不行

现在只能想到弄个类将所有繁体字列出来转成简体,有可好方法可告诉我

5. Java如何判断中文简体繁体

[\u4e00-\u9fa5]
这个可以判断是不是汉字,我测试时,不能区分简繁。内

找到下边这些容JS的正则。(测试也区分不了简繁。)
[\u2E80-\u9FFF]+$ 匹配所有东亚区的语言
[\u4E00-\u9FFF]+$ 匹配简体和繁体
[\u4E00-\u9FA5]+$ 匹配简体

希望能你有点帮助,我再找找怎么区分简繁。

6. java项目翻译繁体

必须用国际化,无论哪个国家的文字都可以转换。
struts和spring都提供了国际化支持,你查一下国际化怎么做就行了。
很简单的。。。说简单点就是把页面中需要显示的文字,都存进属性文件里,一个属性指向多种文字,最后根据用户需要,选取适合的字体就行了。。无论英文,繁体字,还是小日本的文字,都可以定义。。

阅读全文

与java中文简繁体转换工具相关的资料

热点内容
u盘文件被锁怎么消除 浏览:39
前三季度gdp数据广东什么时候公布 浏览:726
ug导出stp文件后显示 浏览:262
struts2文件上传例子 浏览:480
智能粉碎文件名 浏览:625
编程是干什么的适合几岁儿童上 浏览:412
photoshop中文版最新版本 浏览:828
什么app能点播广西卫视 浏览:338
word如何批量放入相应的文件夹 浏览:884
如何在excel一列删除数据 浏览:534
商科学生为什么学编程 浏览:438
压缩文件记录 浏览:967
网上招聘找工作去哪个网站 浏览:276
ps生成文件怎么打开 浏览:631
文档过期文件如何找回 浏览:968
daf是什么文件 浏览:851
云闪付可以适用于哪些app 浏览:210
jsp循环输出44的表格 浏览:772
win10有哪些必装软件 浏览:151
xml文件打开是空白 浏览:79

友情链接