`
clz2008wan
  • 浏览: 7654 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java国际化中ResourceBoundle和properties类

    博客分类:
  • java
阅读更多
java国际化中ResourceBoundle和properties类:
   
1、properties经常用来缓存系统的  配置文件,是基于map的

存储方式,   配置文件可以直接从输入流中加载或配置改变时

保存到流中。
   
   
2、ResourceBoundle用来加载和存取取系统的中英文资源码,

eclipse中有专门编辑资源文件的插件。

package Util;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Locale;
import java.util.Properties;
import java.util.ResourceBundle;

public class TestApp
{

    public static void initConfig()
    {

        String filepath = System.getProperty("user.dir") + File.separator + "TestApp.cfg";
        try
        {
            FileInputStream inputStream = new FileInputStream(filepath);
            Properties properties = new Properties();
            try
            {
                properties.load(inputStream);
                AppConfig.language = properties.getProperty("language");
                AppConfig.AUTO_SAVE_PATH = properties.getProperty("autoSavePath");
            }
            catch (IOException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        catch (FileNotFoundException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println("加载配置文件失败!");
        }

    }

    public static void main(String[] args)
    {
        TestApp.initConfig();
        if (AppConfig.language.equals("zh"))
        {
            Resource.resouces = ResourceBundle.getBundle("Util.TestAppRes_zh", Locale.CHINA);
            System.out.println(Resource.getResource("key1"));
            System.out.println(Resource.getResource("key2"));
            System.out.println(Resource.getResource("key3"));
        }
        System.out.println(AppConfig.AUTO_SAVE_PATH);
    }

}

//--------------------------------------------------------------------
public class AppConfig
{
    public static String language = "";

    public static String AUTO_SAVE_PATH = "";
}

//--------------------------------------------------------------------import java.util.ResourceBundle;

public class Resource
{
    public static ResourceBundle resouces = null;

    public static String getResource(String key)
    {
        try
        {
            String value = resouces.getString(key);
            return value;
        }
        catch (Exception e)
        {
            System.out.println("error:" + key);
            return key;

        }

    }
}



中文资源吗文件:TestAppRes_zh.properties
内容如下:

#**************************登录对话框**************************
key1=用户登录
key2=请输入用户名称和口令
key3=用户名称:

//--------------------------------------------------------------------

系统配置文件:TestApp.cfg
内容如下:

#Tue Feb 05 09:30:32 GMT+08:00 2013
DebugLevel=0
autoSavePath=C\:\\Users\\CWX159~1\\AppData\\Local\\Temp\\TBAutoSave\\
分享到:
评论

相关推荐

    java properties文件中文转化

    默认情况下,Java Properties类在读取和写入文件时使用ISO-8859-1编码,这是一种西欧字符集,不包含中文字符。当我们在properties文件中直接使用中文时,Java在读取时可能会出现乱码。为了解决这个问题,我们可以...

    java 实现国际化 中英文语言切换

    - 分离业务逻辑和显示逻辑:将国际化字符串移出Java代码,放入资源包中。 - 维护统一的资源包命名和结构,便于管理和更新。 - 使用国际化友好的日期和数字格式,避免硬编码。 通过以上步骤和方法,我们可以有效...

    java国际化&时间处理

    总的来说,Java的国际化和时间处理涉及多个类和接口,需要熟练掌握`Locale`、`ResourceBundle`、`SimpleDateFormat`(及其替代品`java.time`包)以及`ZoneId`等。理解这些概念并合理运用,可以帮助开发者构建出符合...

    国际化 必备工具 java编写

    在IT行业中,国际化(i18n,Internationalization)是一个重要的概念,特别是在软件开发领域,它涉及使软件能够适应不同语言和地区的需求。Java作为一种广泛使用的编程语言,提供了强大的国际化支持。本篇将深入探讨...

    java 改变Properties文件中的键值

    总结来说,Java中修改Properties文件的键值涉及到使用`Properties`类的`load()`, `setProperty()`, 和 `store()`方法。在实际应用中,需要考虑异常处理和资源管理,以确保程序的稳定性和效率。通过封装这些操作到...

    properties文件国际化插件

    在Java开发中,为了支持多语言环境,我们通常会使用`properties`文件来实现应用程序的国际化(i18n)。`properties`文件是一种键值对的配置文件,它允许我们将不同语言的文本资源存储在独立的文件中,然后在运行时...

    Java读取含中文key的properties文件

    `java.util.Properties`是Java标准库中的一个类,它提供了一种加载和保存属性列表的方法,这些属性可以是字符串到字符串的映射。但是,由于默认的编码问题,我们需要指定正确的编码来解析含有非ASCII字符的键或值。...

    JAVA 解决Properties文件保存中文乱码

    在Java编程中,Properties文件是用于存储配置信息的文本文件,通常包含键值对,其中键和值可以是任意字符串。然而,当这些文件中包含中文字符时,如果不正确地处理编码,可能会出现中文乱码的问题。本文将深入探讨...

    国际化插件--读取 .properties的中文文件

    在IT行业中,国际化(Internationalization)是一个重要的概念,它涉及到软件如何适应不同语言和文化环境。Eclipse是一款广泛使用的...在使用过程中,理解.properties文件的编码规则和Java的国际化框架是至关重要的。

    java国际化组件

    在Java中,国际化通常通过使用Resource Bundle和Java的Locale类来实现。资源库(Resource Bundle)包含了特定语言环境下的字符串和其他可本地化的资源,而Locale对象则代表了特定的语言和地区设置。 首先,我们来看...

    java 枚举遍历键值对 属性类Properties 类加载器

    而Properties类是Java中用于处理键值对的标准工具,它通常与类加载器协同工作来加载和存储配置信息。现在,我们将深入探讨这些概念。 首先,让我们来看看枚举。在Java中,枚举可以通过以下方式定义: ```java ...

    Java国际化编程及其实现.rar

    在Java中,国际化主要通过java.util包下的Locale、ResourceBundle和Format类来实现。 首先,Locale类代表一个特定的语言环境,包括语言、国家和变体。例如,"zh_CN"代表简体中文,"en_US"代表美式英语。开发者可以...

    Java中Properties类的操作实例详解

    Java中Properties类的操作实例详解 Java中Properties类是Java.util包中的一个重要类,主要用于读取Java的配置文件。...Properties类是Java中读取配置文件的重要类,提供了多种方法来读取和设置Properties文件。

    java国际化i18n

    Java国际化(i18n)是Java平台为支持全球不同地区的用户和语言而设计的一种机制。i18n这个名字来源于“internationalization”这个单词,其中'i'是第9个字母,'n'是第14个字母,所以18代表了两者之间的字母数。Java的...

    利用Java的Properties 类读取配置文件信息

    Java提供了一个内置的`java.util.Properties`类,用于处理`.properties`文件,这种格式通常用来存储键值对,即键(key)和对应的值(value)。以下是如何利用`Properties`类读取和操作`.properties`文件的详细步骤。...

    java properties文件操作工具类,可追加修改

    此工具类只用于Java后端在操作Properties文件的时候写的工具类,方便properties文件的存取操作

    java 读取properties文件代码

    总结,Java中读取Properties文件是通过`java.util.Properties`类来实现的,涉及的关键步骤包括加载文件、获取键值对以及处理可能的异常。这种机制在许多场景下都非常实用,如数据库连接配置、应用设置等。理解并熟练...

    Java .properties中文资源批量转换工具和用法

    Java中的`.properties`文件是用于存储配置信息和国际化(i18n)资源的关键组件。这些文件通常包含键值对,其中键代表消息或文本标识,值是与该键关联的本地化字符串。在处理中文内容时,由于字符编码的问题,可能会...

    java实现国际化

    总之,Java的国际化和本地化功能使得开发者能够轻松地构建全球化应用程序,满足不同用户群体的需求。通过合理利用`ResourceBundle`、`Locale`、`DateFormat`等类,以及相应的开发工具,我们可以实现高效且灵活的国际...

    Java Properties 解决中文乱码和顺序读写.docx

    Java Properties 类是Java标准库中用于处理配置文件的关键组件,主要负责存储和加载键值对数据,常用于管理应用程序的配置信息。配置文件通常以`.properties`为扩展名,采用文本格式,每行包含一个键值对,键和值...

Global site tag (gtag.js) - Google Analytics