本文共 1832 字,大约阅读时间需要 6 分钟。
读取Properties文件读取,路径,空格,中文问题读取Properties文件和路径问题 如:读取jdbc.properties文件 路径 读取的类位于:package com.query.util; getClass().getResourceAsStream(jdbc.properties) 则jdbc.properties描述的路径是相对于这个类所在包的根路径而言的, 即为相对于文件夹util所在目录开始, getClass().getResourceAsStream(/jdbc.properties) 以/开始 则/jdbc.properties描述的路径是相对于这各类当前的文件夹而言的, 即为相对于文件夹com所在目录开始, 读取的方法 1。使用java.util.Properties类的load()方法 示例: InputStream in = lnew BufferedInputStream(new FileInputStream(name)); Properties p = new Properties(); p.load(in); 2。使用java.util.ResourceBundle类的getBundle()方法 示例: ResourceBundle rb = ResourceBundle.getBundle(name, Locale.getDefault()); 3。使用java.util.PropertyResourceBundle类的构造函数 示例: InputStream in = new BufferedInputStream(new FileInputStream(name)); ResourceBundle rb = new PropertyResourceBundle(in); 4。使用class变量的getResourceAsStream()方法 示例: InputStream in = JProperties.class.getResourceAsStream(name); Properties p = new Properties(); p.load(in); 5。使用class.getClassLoader()所得到的java.lang.ClassLoader的getResourceAsStream()方法 示例: InputStream in = JProperties.class.getClassLoader().getResourceAsStream(name); Properties p = new Properties(); p.load(in); 6。使用java.lang.ClassLoader类的getSystemResourceAsStream()静态方法 示例: InputStream in = ClassLoader.getSystemResourceAsStream(name); Properties p = new Properties(); p.load(in); 补充 Servlet中可以使用javax.servlet.ServletContext的getResourceAsStream()方法 示例:InputStream in = context.getResourceAsStream(path); Properties p = new Properties(); p.load(in); 一般常使用第五种 空格 //获得文件路径,并对路径进行处理 private static String getUrl() { String path = configLoad.class.getResource("config.properties").toString(); path = path.replace("%20", " "); //引号中有一个半角的空格 path = path.substring(6); return path; } } 那么这里返回了一个Properties类型的值,在这里就可以使用getProperty()来获得值 如:Properties pro = configLoad.getConfig(); String http = pro.getProperty("url").toString();转载地址:http://zpjmb.baihongyu.com/