package cn.besteam.common.util; import java.io.*; import java.util.Properties; //properties文件生成和读写 public class propertiesUtil { // 静态资源文件路径 // String folderPath ="/data/im_cursor"; // String filePath = "/im_cursor.properties"; static String folderPath = "e:/"; static String filePath = "/medicalSdk.properties"; /** * 读取属性文件中相应键的值 * * @param key * 主键 * @return String */ private String getKeyValue(String key) { // 如果文件夹不存在就创建 File folder = new File(folderPath); if (!folder.exists() && !folder.isDirectory()) { System.out.println("//不存在"); folder.mkdirs(); } // 如果文件不存在就创建 File file = new File(folderPath + filePath); if (!file.exists()) { try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } Properties props = new Properties(); try { // 读取文件 FileInputStream fis = new FileInputStream(folderPath + filePath); props.load(fis); } catch (IOException e) { e.printStackTrace(); System.exit(-1); } return props.getProperty(key); } /** * 更新properties文件的键值对 如果该主键已经存在,更新该主键的值; 如果该主键不存在,则插件一对键值。 * * @param keyname * 键名 * @param keyvalue * 键值 */ private static void updateProperties(String keyname, String keyvalue) { // 如果文件夹不存在就创建 File folder = new File(folderPath); if (!folder.exists() && !folder.isDirectory()) { System.out.println("//不存在"); folder.mkdirs(); } // 如果文件不存在就创建 File file = new File(folderPath + filePath); if (!file.exists()) { try { file.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } Properties props = new Properties(); try { // 读取文件 FileInputStream fis = new FileInputStream(folderPath + filePath); props.load(fis); // 调用 Hashtable 的方法 put,使用 getProperty 方法提供并行性。 // 强制要求为属性的键和值使用字符串。返回值是 Hashtable 调用 put 的结果。 OutputStream fos = new FileOutputStream(folderPath + filePath); props.setProperty(keyname, keyvalue); // 以适合使用 load 方法加载到 Properties 表中的格式, // 将此 Properties 表中的属性列表(键和元素对)写入输出流 props.store(fos, "Update '" + keyname + "' value"); } catch (IOException e) { System.err.println("属性文件更新错误"); } } public static void main(String[] args) { updateProperties("equipmentCode","123"); } }