`
Jatula
  • 浏览: 278533 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

简体转繁体或者繁体转简体

阅读更多
最近在JavaEye上面看了一篇求助简繁体的转换问题,居然有人说不能告诉你,我晕,小弟不材,写一个出来共享一下;

package com.jatula.util;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.util.HashMap;
import java.util.Map;

/**
* 繁体中文转简体中文
* @author jatula
*
*/

public class TrandtionalToSimplified {
    private static Map<Character, Character> CHAR_MAP = new HashMap<Character, Character>();
    static {
        STMapInitialize();
    }

    /**
     * 初始化CHAR_MAP里面的数据
     */
    public static void STMapInitialize() {
        try {
            URL mapf = TrandtionalToSimplified.class.getResource("st.map");
            InputStream mapInput = mapf.openStream();
            BufferedReader mapbf = new BufferedReader(new InputStreamReader(
                    mapInput, "utf-8"));
            String rline;
            while ((rline = mapbf.readLine()) != null) {
                CHAR_MAP.put(rline.charAt(1), rline.charAt(0));
            }
            mapInput.close();
        } catch (IOException e) {
            e.printStackTrace();
            throw new ExceptionInInitializerError("没有找到资源文件st.map");
        }
    }

    /**
     * 这是一个把繁体字符串转换简体字符串
     *
     * @param source
     *            要进行转换的繁体字符串
     * @return 返回转换后的简体字符串
     */
    public static String DoTrandtionalToSimplified(String source) {
        if (source == null) {
            return null;
        }
        StringBuffer result = new StringBuffer();
        try {
            for (int i = 0; i < source.length(); i++) {
                char tmp = source.charAt(i);
                if (CHAR_MAP.containsKey(tmp)) {
                    result.append(CHAR_MAP.get(tmp));
                } else {
                    result.append(tmp);
                }
            }
        } catch (NullPointerException e) {
            STMapInitialize();
            return DoTrandtionalToSimplified(source);
        }
        return result.toString();
    }

    public static void main(String[] args) {
        TrandtionalToSimplified tts = new TrandtionalToSimplified();
        String tto = tts.DoTrandtionalToSimplified("叢叢叢叢");
        System.out.println(tto);
    }
}

对照表的大伙就自已加吧,如果做到这步大家都不满意,也没有办法了;嘻嘻;

业業
丛叢

像上面那样列一列就OK了,没什么!
换个角度想,简体转繁体也就一样了;
st.map是一个对照对文件,努力点手动加一下;
9
5
分享到:
评论
4 楼 Jatula 2008-03-23  
不可能吧,建一个名为st.map文件;
里面写入:
业業
丛叢
保存就OK了;
注意目录
URL mapf = TrandtionalToSimplified.class.getResource("st.map");
3 楼 freecode 2008-03-22  
按你的格式写,还是输出“叢叢叢叢”
2 楼 Jatula 2008-03-18  
什么格式不重要,能读出来就行;

业業
丛叢

这种格式;
1 楼 mawt 2008-03-17  
楼主人不错
st.map是个怎么样的格式,贴出来看看

相关推荐

    简体转繁体工具

    《简体转繁体工具详解:高效转换与应用》 在中文语言的使用环境中,简体字和繁体字的转换是一项常见的需求。无论是为了阅读传统文献、与台湾、香港或海外华人交流,还是在互联网上发布兼容性更强的内容,简体转繁体...

    简体转繁体源代码

    标题 "简体转繁体源代码" 描述的是一个编程项目,其主要功能是将汉字的简体形式转换为繁体形式。这个项目已经在 DelphiXE2 开发环境中经过了测试,表明它能够成功地在该平台上运行。Delphi 是一种基于 Object Pascal...

    android 简体转繁体,繁体转简体 代码 附sdk

    10. **简体转繁体.txt文件**: 这个文件可能是转换示例或者转换规则的文本文件,可能包含了简体中文词汇及其对应的繁体形式,可以作为开发时的一个参考数据集。 综上所述,实现Android中的简繁体转换涉及多方面的...

    java中文简体转繁体ZHConverter

    OpenCC的工作原理是通过预定义的转换规则将简体字映射到对应的繁体字,或者反之。这些规则可能包括单字转换、词语转换以及一些特殊情况的处理。例如,简体字"他"可能转换为繁体字"他",而"他们"则转换为"他們"。`...

    字体转换,简体转繁体

    本文将深入探讨“字体转换,简体转繁体”这一主题,以及如何实现这一转换过程。 简体中文和繁体中文是两种汉字的主要书写形式,它们在中国大陆、台湾、香港和海外华人社区中有不同的使用习惯。简体字主要在中国大陆...

    web js转换简体繁体

    本文将详细介绍一个基于JavaScript实现的“web js转换简体繁体”插件,帮助开发者轻松实现这一功能。 JavaScript,作为前端开发的主要语言之一,具有丰富的库和工具,其中之一就是用于文字编码转换的工具。简体繁体...

    解决项目简体转繁体

    项目"解决项目简体转繁体"可能包含了以上的一种或多种技术实现,通过分析提供的代码,开发者可以学习如何在实际项目中应用这些技术。同时,该项目可能还包含了错误处理、性能测试等方面的内容,这些都是保证转换质量...

    php 中文 简体繁体 互转

    本篇将详细讲解如何在PHP中实现简体中文与繁体中文的互转。 首先,我们需要了解中文字符集的基础知识。简体中文主要使用GBK或UTF-8编码,而繁体中文则常使用Big5编码。在PHP中,我们可以利用不同的库和函数来处理这...

    html简体繁体转换

    "html简体繁体转换"这个主题聚焦于如何在HTML文档中进行这种转换。HTML(超文本标记语言)是网页设计的基础,用于结构化和呈现网页内容。在处理含有简体或繁体中文的HTML文件时,可能需要将一种形式转换为另一种,以...

    C#简体转繁体字工具源码

    “C#简体转繁体字工具源码”是一个基于C#实现的软件开发项目,其目标是提供一种有效的方法将简体汉字转化为对应的繁体形式。源代码是软件开发的核心部分,它揭示了程序内部的工作原理和逻辑,对于学习、修改或扩展...

    简体转繁体源码

    标题中的“简体转繁体源码”指的是一个Delphi编程项目,它的主要功能是实现中文文本的简体到繁体以及繁体到简体的转换。Delphi是一款基于Object Pascal语言的集成开发环境,广泛用于Windows应用软件的开发。这个示例...

    scala java 简体、繁体互转换,判断是否为简体、繁体

    这里我们将详细探讨如何使用Scala和Java来实现简体与繁体中文的互换以及判断文字是简体还是繁体。 首先,让我们了解简体和繁体中文的区别。简体中文是20世纪50年代以来在中国大陆广泛使用的标准化汉字形式,特点是...

    简体转繁体字工具源码20130814

    标题中的“简体转繁体字工具源码20130814”表明这是一个用于将简体中文转换为繁体中文的软件开发项目,时间戳为2013年8月14日。这个工具的核心功能是实现字符集之间的转换,即从简体汉字到繁体汉字的映射。在中文...

    易语言中文简体繁体转换

    本资源"易语言中文简体繁体转换"提供了一种解决方案,帮助用户在简体中文和繁体中文之间进行文本转换。 在编程中,特别是在处理多语言应用时,中文简体与繁体的转换是一项常见的需求。简体中文是中国大陆广泛使用的...

    网页简体转繁体工具.rar

    用户可以通过阅读这个文件来了解如何更有效地使用这个工具,或者获取更多与网页简体转繁体相关的资源。 服务器类-其它工具的标签表明,这个工具可能不仅限于个人电脑使用,也可能集成在服务器端,为网站提供后台...

    转个简单版JS 简体转繁体

    标题中的“转个简单版JS 简体转繁体”指的是使用JavaScript编写的一个轻量级的简体中文到繁体中文的转换工具。在Web开发中,有时我们需要为用户提供多语言支持,其中包括将简体中文转化为繁体中文,以满足不同地区...

    js 网页 简体转繁体

    "js 网页 简体转繁体"这个主题就是关于如何利用JavaScript实现这一功能。JavaScript是一种广泛使用的客户端脚本语言,它可以直接在用户的浏览器上运行,无需服务器端的额外处理,从而实现网页内容的实时转换。 首先...

    中文繁体简体转换依赖文件

    这个压缩包文件“中文繁体简体转换依赖文件”提供了必要的资源和工具,使得开发者能够方便地在繁体中文和简体中文之间进行文本转换。以下是对这个主题的详细讲解: 首先,我们需要理解繁体中文和简体中文的区别。...

    java实现简体转繁体

    在Java编程环境中,实现“简体转繁体”的功能是一项常见的文本处理任务,尤其对于处理中文文档时。这个任务可以通过利用特定的字符映射表或者使用已有的库来完成。以下是一个详细的步骤介绍: 首先,我们需要理解...

    简体字繁体字转换软件

    在这个场景中,它可能包含了简繁体转换的核心算法和数据结构,负责将输入的简体字转换为繁体字,或者反之。DLL文件的优点在于可以被多个应用程序共享,节省系统资源,并且方便更新和维护。 "JFSwitch.exe"很可能是...

Global site tag (gtag.js) - Google Analytics