Properties p = new Properties();
try{
String path = this.class.getClass().getResource("/").getPath();//得到工程名WEB-INF/classes/路径
path=path.substring(1, path.indexOf("classes"));//从路径字符串中取出工程路径
p.load(new FileInputStream(path+"jdbc.properties"));
}catch(Exception e){
e.printStackTrace();
}
01.package apistudy;
02.
03.import java.io.File;
04.import java.io.FileInputStream;
05.import java.io.FileOutputStream;
06.import java.io.IOException;
07.import java.io.InputStream;
08.import java.io.OutputStream;
09.import java.io.UnsupportedEncodingException;
10.import java.util.Properties;
11.
12.public class PropertiesTest
13.{
14.
15. public static void main(String[] args)
16. {
17.
18. String readfile = "d:" + File.separator + "readfile.properties";
19. String writefile = "d:" + File.separator + "writefile.properties";
20. String readxmlfile = "d:" + File.separator + "readxmlfile.xml";
21. String writexmlfile = "d:" + File.separator + "writexmlfile.xml";
22. String readtxtfile = "d:" + File.separator + "readtxtfile.txt";
23. String writetxtfile = "d:" + File.separator + "writetxtfile.txt";
24.
25. readPropertiesFile(readfile); //读取properties文件
26. writePropertiesFile(writefile); //写properties文件
27. readPropertiesFileFromXML(readxmlfile); //读取XML文件
28. writePropertiesFileToXML(writexmlfile); //写XML文件
29. readPropertiesFile(readtxtfile); //读取txt文件
30. writePropertiesFile(writetxtfile); //写txt文件
31. }
32.
33. //读取资源文件,并处理中文乱码
34. public static void readPropertiesFile(String filename)
35. {
36. Properties properties = new Properties();
37. try
38. {
39. InputStream inputStream = new FileInputStream(filename);
40. properties.load(inputStream);
41. inputStream.close(); //关闭流
42. }
43. catch (IOException e)
44. {
45. e.printStackTrace();
46. }
47. String username = properties.getProperty("username");
48. String passsword = properties.getProperty("password");
49. String chinese = properties.getProperty("chinese");
50. try
51. {
52. chinese = new String(chinese.getBytes("ISO-8859-1"), "GBK"); // 处理中文乱码
53. }
54. catch (UnsupportedEncodingException e)
55. {
56. e.printStackTrace();
57. }
58. System.out.println(username);
59. System.out.println(passsword);
60. System.out.println(chinese);
61. }
62.
63. //读取XML文件,并处理中文乱码
64. public static void readPropertiesFileFromXML(String filename)
65. {
66. Properties properties = new Properties();
67. try
68. {
69. InputStream inputStream = new FileInputStream(filename);
70. properties.loadFromXML(inputStream);
71. inputStream.close();
72. }
73. catch (IOException e)
74. {
75. e.printStackTrace();
76. }
77. String username = properties.getProperty("username");
78. String passsword = properties.getProperty("password");
79. String chinese = properties.getProperty("chinese"); //XML中的中文不用处理乱码,正常显示
80. System.out.println(username);
81. System.out.println(passsword);
82. System.out.println(chinese);
83. }
84.
85. //写资源文件,含中文
86. public static void writePropertiesFile(String filename)
87. {
88. Properties properties = new Properties();
89. try
90. {
91. OutputStream outputStream = new FileOutputStream(filename);
92. properties.setProperty("username", "myname");
93. properties.setProperty("password", "mypassword");
94. properties.setProperty("chinese", "中文");
95. properties.store(outputStream, "author: shixing_11@sina.com");
96. outputStream.close();
97. }
98. catch (IOException e)
99. {
100. e.printStackTrace();
101. }
102. }
103.
104. //写资源文件到XML文件,含中文
105. public static void writePropertiesFileToXML(String filename)
106. {
107. Properties properties = new Properties();
108. try
109. {
110. OutputStream outputStream = new FileOutputStream(filename);
111. properties.setProperty("username", "myname");
112. properties.setProperty("password", "mypassword");
113. properties.setProperty("chinese", "中文");
114. properties.storeToXML(outputStream, "author: shixing_11@sina.com");
115. outputStream.close();
116. }
117. catch (IOException e)
118. {
119. e.printStackTrace();
120. }
121. }
122.
123.}
相关推荐
非常实用的读取配置文件的小工具,专门读取WEB-INF下文件夹中的properties文件,代码简洁、亲测没有问题,适用范围广,任何类中都可调用,传入Key及可得到Value
大家都喜欢把配置文件放在src目录下,如果有10个以上的配置文件为什么不考虑在WEB-INF目录下新建一个文件夹,专门放配置文件;这样即好管理,文件安全性又高。亲问题已经解决,把源代码共享给大家,已经通过测试;...
这些文件通常以`.properties`为扩展名,并且位于应用程序的`WEB-INF`或`webroot`目录下,以便于访问和管理。在本文中,我们将详细探讨如何在Java Web环境中读取`webroot`文件下的属性文件。 1. **属性文件结构** ...
这个 myenv.xml 配置文件一般是放在 Tomcat 的 WEB-INF/classes 目录下。我们编制一个 Java 程序直接读取,将 dbhost、dbuser、dbpassword 提取出来供其他程序访问数据库用。 目前使用 SAX 比较多,与 DOM 主要区别...
在Java Web开发中,有时我们需要从应用程序的`classes`目录或者对应的`WEB-INF/classes`目录中读取资源文件,例如配置文件、静态内容或者数据库连接字符串等。这通常发生在我们想要在运行时加载非代码的资源,而这些...
### Java读取Properties文件的六种方法 在Java开发中,`Properties` 文件常用于存储配置信息,如数据库连接字符串、应用配置等。正确且高效地读取这些配置文件对于程序运行至关重要。本文将详细介绍六种不同的方法...
3. 使用`java-property-utils`读取并解析配置文件。 4. 在`web.xml`中配置CORS过滤器,指定配置文件的位置和过滤器的执行顺序。 5. 编写过滤器逻辑,使用解析的配置信息设置响应头。 以下是一个简单的`web.xml`配置...
总之,无论是Web环境还是J2SE环境,读取配置文件都是通过`java.util.Properties`类来实现的。Web环境下,我们通常依赖类加载器来定位文件;而在J2SE环境下,我们可以直接使用文件路径。理解并掌握这两种方法,对于...
通过上述内容,我们了解了Java中`Properties`类的基本操作,如何通过不同的方式加载`.properties`文件,以及如何在Java Web应用中使用这些配置文件。这些操作在开发过程中非常实用,可以简化配置管理,提高代码的可...
### JAVA读取数据库的XML配置文件 #### 前言 在软件开发中,数据库配置信息的管理至关重要。随着技术的发展,出现了许多优秀的框架来帮助开发者处理这些任务,例如Hibernate等ORM(对象关系映射)工具,它们简化了...
在Java开发中,配置文件通常是用来存储应用的配置参数或者环境设置,而Properties文件是最常见的配置文件格式。本文将详细讲解使用J2SE API来读取Properties文件的六种方法。 1. **使用java.util.Properties类的...
在Servlet程序中,开发者经常需要读取配置文件或其他类型的文件。使用`FileInputStream`类可以实现这一功能,但在使用时需要注意文件路径的设置方式。 #### 详细解释: - **相对路径与绝对路径**:在Servlet程序中...
例如,我们可以创建一个名为`cors.properties`的文件,存储跨域配置,并在`web.xml`中使用`java-property-utils`来加载这些参数: ```xml <init-param> <param-name>cors.config.file</param-name> <param-value>...
在Java编程语言中,处理配置文件是常见的需求之一,尤其是当需要从外部文件读取配置信息时。Properties文件因其灵活性和易读性而被广泛应用于各种场景,如数据库连接、系统配置参数等。本文将详细介绍Java中读取...
而对于一些如log4j的配置文件log4j.properties,可能放置在类路径下更为方便。 综上所述,web.xml文件提供了灵活的方式来指定配置文件的加载路径,开发者可以根据具体需求来选择不同的配置策略,以满足应用程序的...
String path = "/WEB-INF/config.properties"; InputStream in = context.getResourceAsStream(path); if (in == null) { throw new ServletException("Could not find resource: " + path); } Properties p =...
此方法从Web应用的根目录下读取文件,通常用于读取部署在 `WEB-INF` 目录下的配置文件。 以上方法各有优缺点,具体使用取决于你的需求,例如,是否需要支持国际化、文件位置是在类路径还是文件系统、是否在Web环境...
在Java应用开发中,特别是Web应用程序的构建过程中,资源文件(如配置文件、属性文件等)的加载是必不可少的一部分。本文将重点探讨Java环境下不同方式下的文件加载方法,尤其关注在Spring框架下的实践与应用。 ###...
2. **配置文件**:如web.xml(Web应用配置文件),spring配置文件(用于依赖注入),数据库连接配置文件(如hibernate.cfg.xml或application.properties)等。 3. **资源文件**:如静态文件(HTML、CSS、JavaScript...