import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.util.Enumeration; import java.util.Properties; import org.springframework.core.io.support.PropertiesLoaderUtils; public class PropertiesTest { /** * 根据key读取value(第一种方式 ) * * @param filePath * 相对路径, properties文件需在classpath目录下, * 比如:configure.properties在包com.test.configure下, * 路径就是com/test/configure/configure.properties * @param key * @return */ public static String getProperty(String filePath, String key) { String value = null; java.util.Properties props; try { props = PropertiesLoaderUtils.loadAllProperties(filePath); value = props.getProperty(key); } catch (IOException e) { e.printStackTrace(); } return value; } /** * 读取properties的全部信息(第一种方式 ) * * @param filePath * 相对路径, properties文件需在classpath目录下, * 比如:configure.properties在包com.test.configure下, * 路径就是com/test/configure/configure.properties */ public static void getProperties(String filePath) { java.util.Properties props; try { props = PropertiesLoaderUtils.loadAllProperties(filePath); printAllProperty(props); } catch (IOException e) { e.printStackTrace(); } } /** * 根据key读取value(第二种方式 ) * * @param filePath * 绝对路径或相对路径, 如果是相对路径,则从当前项目下的目录开始计算, * 如:当前项目/configure/configure.properties, * 相对路径就是configure/configure.properties * @param key * @return */ public static String readValue(String filePath, String key) { Properties props = new Properties(); String value = null; try { InputStream in = new BufferedInputStream(new FileInputStream(filePath)); props.load(in); value = props.getProperty(key); } catch (Exception e) { e.printStackTrace(); } return value; } /** * 读取properties的全部信息(第二种方式 ) * * @param filePath * 绝对路径或相对路径, 如果是相对路径,则从当前项目下的目录开始计算, * 如:当前项目/configure/configure.properties, * 相对路径就是configure/configure.properties */ public static void readProperties(String filePath) { Properties props = new Properties(); try { InputStream in = new BufferedInputStream(new FileInputStream(filePath)); props.load(in); printAllProperty(props); } catch (Exception e) { e.printStackTrace(); } } /** * 根据key读取value(第三种方式 ) * * @param filePath * 相对路径, properties文件需在classpath目录下, * 比如:configure.properties在包com.test.configure下, * 路径就是/com/test/configure/configure.properties * @param key * @return */ public static String getValue(String filePath, String key) { Properties props = new Properties(); try { // InputStream in = Object.class.getResourceAsStream(filePath); props.load(in); } catch (IOException e) { e.printStackTrace(); } return props.getProperty(key); } /** * 读取properties的全部信息(第三种方式 ) * * @param filePath * 相对路径, properties文件需在classpath目录下, * 比如:configure.properties在包com.test.configure下, * 路径就是/com/test/configure/configure.properties * @return */ public static void getValues(String filePath) { Properties props = new Properties(); try { InputStream in = Object.class.getResourceAsStream(filePath); props.load(in); printAllProperty(props); } catch (IOException e) { e.printStackTrace(); } } private static void printAllProperty(java.util.Properties props) { @SuppressWarnings("rawtypes") Enumeration en = props.propertyNames(); while (en.hasMoreElements()) { String key = (String) en.nextElement(); String value = props.getProperty(key); System.out.println(key + value); } } public static void main(String[] args) { System.out.println(getProperty("com/test/configure/configure.properties", "jdbc.driverClassName")); getProperties("com/test/configure/configure.properties"); System.out.println(readValue("configure/configure.properties", "jdbc.driverClassName")); readProperties("configure/configure.properties"); System.out.println(getValue("/com/test/configure/configure.properties", "jdbc.driverClassName")); getValues("/com/test/configure/configure.properties"); } }
转载请注明出处:http://xieke90.iteye.com/blog/2233046
相关推荐
在Java编程中,Properties文件是一种常用的配置文件格式,用于存储应用程序的配置参数或者环境设置。这些文件通常以键值对的形式存在,例如`key=value`。读取Properties文件是Java开发中的常见操作,特别是在需要...
### Java读写Properties配置文件详解 #### 一、引言 在Java开发中,`Properties`类被广泛用于处理各种类型的配置文件。这些文件通常包含了应用程序运行时所需的配置信息,如数据库连接信息、系统参数等。`...
### Java读取Properties文件的六种方法 在Java开发中,`Properties` 文件常用于存储配置信息,如数据库连接字符串、应用配置等。正确且高效地读取这些配置文件对于程序运行至关重要。本文将详细介绍六种不同的方法...
总结一下,处理Java中的Properties文件时,关键是正确指定文件路径,以及在写入和读取时妥善管理文件流。确保关闭流并根据需要刷新,以避免数据丢失或未更新的问题。通过学习和实践这些解决方案,你将在Java应用开发...
本篇将深入探讨如何使用Java来实现Properties文件的读取。 首先,我们需要了解Properties类在Java中的作用。`java.util.Properties`是Java提供的一个类,它继承了`Hashtable`,主要用于处理属性列表(键/值对)。...
在Java编程中,`properties`文件是一种常用的存储配置信息的方式,它以键值对的形式组织数据,便于程序在运行时动态获取和修改配置。本文将详细介绍如何在Java中读取`properties`配置文件。 首先,我们需要了解`...
java读取properties文件的工具类,传入配置文件名字和其中的key就可以读取
当我们在properties文件中直接使用中文时,Java在读取时可能会出现乱码。为了解决这个问题,我们可以使用两种策略: 1. 文件编码转换:在写入properties文件时,使用支持中文的编码,如UTF-8。在读取时,需要指定...
总结一下,处理Java中的Properties文件读写时,需要注意文件路径的准确性、文件的读写权限以及缓存问题。通过以上方法,应该能够有效解决描述中提到的问题。对于提供的"新建文本文档.txt",虽然不是Properties文件,...
在Java代码中,首先需要导入`java.util.Properties`和`java.io.*`等相关的类库,以便进行读写Properties文件的操作。 2. **加载Properties文件** 使用`Properties`类的`load()`方法加载Properties文件。这个方法...
// 加载properties文件 props.load(input); } catch (IOException ex) { ex.printStackTrace(); } finally { if (input != null) { try { input.close(); } catch (IOException e) { e.printStackTrace(); ...
本文将深入探讨如何在Java中解决Properties文件保存和读取中文乱码的挑战。 首先,我们需要理解Java默认使用ISO-8859-1编码来处理Properties文件。由于此编码不支持大部分中文字符,因此在保存或加载包含中文的...
在Java编程中,`properties`文件是一种常用的配置文件格式,用于存储应用的配置参数或设置。这些文件通常以键值对的形式存在,如`key=value`。本篇将详细讲解如何在Java中读取`properties`文件并将其内容转换为`Map`...
在Python编程中,有时我们需要处理Java开发中常用的`.properties`配置文件。虽然Python标准库并未直接提供处理此类文件...通过这种方式,你可以灵活地读取和使用Java风格的配置文件,让Python程序更加健壮和适应性强。
本篇文章将深入探讨如何在Java中读取`properties`文件,无需依赖任何第三方库。 首先,我们需要了解Java的标准库中提供的`java.util.Properties`类。这个类提供了一种存储和加载属性列表的方法,它能够处理`....
总之,Java中的`properties`文件是管理配置信息的有效方式,而`java.util.Properties`类提供了方便的API来读取和操作这些文件。通过`SysPropertiesUtil.java`这样的工具类,我们可以封装加载和获取配置的逻辑,使...
在Java编程中,`properties`文件是用于存储应用程序配置信息的一种简单文本格式。这些文件通常包含键值对,其中键和值之间用等号或冒号分隔。本篇文章将详细探讨如何在Java中读取、写入、修改以及删除`properties`...
通过以上步骤,你可以使用Java的`Properties`类高效地读取、修改和保存配置文件,为你的应用程序提供灵活的配置管理。在实际项目中,你可能会将其封装到一个单独的类,如示例代码中的`PropertiesReader`,以提供更...
### Java读取Properties文件的六种方法 在Java开发中,`Properties`类是一个非常实用且常见的工具类,主要用于管理程序中的配置信息。通常情况下,这些配置信息会被存储在一个`.properties`文件中,并通过`...