關於JAVA中怎麼讀取和修改.properties檔案中的值
第一種方式:
以我自己的專案為原型這裡案例一個最簡單的獲取方法
定義一個獲取類
下面是我的專案的檔案目錄package com.boli.tianchuang.sys.util; import java.io.*; import java.util.Properties; /** * Desc:properties檔案獲取工具類 * Created by */ public class PropertyUtil { private static Properties props; static{ loadProps(); } synchronized static private void loadProps(){ props = new Properties(); InputStream in = null; try { //第一種,通過類載入器進行獲取properties檔案流 //in = PropertyUtil.class.getClassLoader().getResourceAsStream("sysConfig.properties"); //第二種,通過類進行獲取properties檔案流 in = PropertyUtil.class.getResourceAsStream("/properties/sysConfig.properties"); props.load(in); } catch (FileNotFoundException e) { //logger.error("sysConfig.properties檔案未找到"); } catch (IOException e) { //logger.error("出現IOException"); } finally { try { if(null != in) { in.close(); } } catch (IOException e) { //logger.error("sysConfig.properties檔案流關閉出現異常"); } } //logger.info("載入properties檔案內容完成..........."); //logger.info("properties檔案內容:" + props); } public static String getProperty(String key){ if(null == props) { loadProps(); } return props.getProperty(key); } public static String getProperty(String key, String defaultValue) { if(null == props) { loadProps(); } return props.getProperty(key, defaultValue); } }
上面的類通過key就可以直接獲取value了
這裡特別注意的就是你的專案的檔案路徑了,這裡一定要寫對。
第二種方式:
檔案目錄與上圖相同,但是這裡我多了增加、修改功能,以下是程式碼和解釋
package com.boli.tianchuang.helper; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.Properties; public class CeShi { private static Properties prop; public static void load(String path){ //這裡的path是專案檔案的絕對路徑 //先獲取專案絕對路徑:Thread.currentThread().getContextClassLoader().getResource("").getPath(); //然後在專案路徑後面拼接"properties/sysConfig.properties"; prop= new Properties();// 屬性集合物件 FileInputStream fis; try { System.out.println(path); fis = new FileInputStream(path); prop.load(fis); fis.close();// 關閉流 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } //引數為要修改的檔案路徑 以及要修改的屬性名和屬性值 public static Boolean updatePro(String path,String key,String value){ if(prop==null){ load(path); System.out.println("修改前重新載入一遍"); } System.out.println("獲取新增或修改前的屬性值:"+key+"=" + prop.getProperty(key)); prop.setProperty(key, value); // 檔案輸出流 try { FileOutputStream fos = new FileOutputStream(path); // 將Properties集合儲存到流中 prop.store(fos, "Copyright (c) Boxcode Studio"); fos.close();// 關閉流 } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); return false; } System.out.println("獲取新增或修改後的屬性值:"+key+"=" + prop.getProperty(key)); return true; } //引數為要修改的檔案路徑 以及要修改的屬性名和屬性值 public static String getPro(String path,String key){ if(prop==null){ load(path); System.out.println("重新載入一遍"); } FileInputStream fis; try { fis = new FileInputStream(path); prop.load(fis);// 將屬性檔案流裝載到Properties物件中 fis.close();// 關閉流 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } System.out.println("查詢到的"+key+"的值:"+prop.getProperty(key)); return prop.getProperty(key); } }
相關推薦
關於JAVA中怎麼讀取和修改.properties檔案中的值
第一種方式: 以我自己的專案為原型這裡案例一個最簡單的獲取方法 定義一個獲取類 package com.boli.tianchuang.sys.util; import java.io.*; import java.util.Properties; /** * De
在Java中讀取並儲存EXCEL檔案中圖片
/* * 儲存excel中的圖片(以檔案形式儲存,或者存入資料庫) * * basePath:應用所在路徑,附件存放路徑: * 引數:is是上傳的附件檔案流 */ public void saveSheetImgByFile(
maven 根據P引數值打包動態修改properties檔案中值或一定properties
由於本人 最近忙著公司事情,昨天沒有寫部落格,今天就繼續寫吧 需求:由於最近開發clover專案 ,沒有使用spring,更沒有使用任何框架,而使用J2EE的web工程,所以連線ZK和MongoDB、Redis等伺服器需用指定properties檔案, 而目前公司又分各套環
C#程式中:如何修改xml檔案中的節點(資料)(
要想在web等程式中實現動態的資料內容給新(如網頁中的Flash),不會更新xml檔案中的節點(資料)是遠遠不夠的,今天在這裡說一個簡單的xml檔案的更新,方法比較基礎,很適合初學者看的,保證一看就懂! ------------------程式環境下xml檔案中的節點、元
用ConfigurationManager讀取和修改配置檔案
為了方便有時我們會把一些簡單的配置的資訊放入web.config檔案裡。 放到appSettings新增key value等資訊。 ConfigurationManager.AppSettings["key"]來讀取對應key的value. 儲存的話。 Config
Spring中配置和讀取多個Properties檔案--轉
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> &
java讀取 *.properties檔案中所有物件
這裡提供解析的輔助方法 package com.cms.util; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import java.io.Inpu
java web專案中的properties檔案中的屬性值在啟動後進行修改(資料庫密碼加密等)
public class DecryptPropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer { private Resource[] locations; public void setLocations(
Java中讀取classpath下的檔案
專案的工程目錄入如下: 從類路徑(classpath)下讀取檔案: 我們讀取resources目錄下的StringUtils.java檔案。 介紹幾種常見的方法: 1.使用絕對路徑法: File file = new File("D:\\ide
專案執行過程中修改.properties檔案問題
專案執行過程中需要修改配置檔案的程式碼。菜鳥貼出記錄自己成長。。 /** showOu 要修改為的值 */ public void setAttribute(String value) { OutputStream out = null;
java:讀取並修改word中的內容並儲存。
1.讀取word內容 2.修改要修改的內容 3.儲存word public Map readwriteWord(Map<String, String> map,String gcid,String deptid) { //查詢word模板
java——修改txt檔案中某一行的內容
今天無意間看到java.io中有一個類:RandomAccessFile,可以在檔案的任意位置進行讀寫操作,想到我之前寫的一個小專案,想在txt中修改某一行的內容,都是從頭遍歷txt檔案,修改這一行的同時,把整個檔案放入快取,再把修改後的內容重新寫入檔案,可以說是很蠢了,但一直沒找到好的辦法。 這個
讀取application.yml/application.properties中的引數(或讀取自定義配置檔案中的引數)
使用springboot搭建專案的話,如果程式碼裡需要讀取配置檔案資訊,動態生成資料該怎麼辦呢,其實可以直接寫到springboot配置檔案當中,自己定義標籤來讀取。 application.yml與application.properties有什麼不同呢? (1)yml檔案用縮排代替pro
java 讀取,修改properties檔案,不改變檔案內容順序
FileInputStream input1 = new FileInputStream("/jdbc.properties");//讀取程式碼 SafeProperties safeProp1 = new SafeProperties();
c++儲存和讀取資料到txt檔案中並用python畫圖
#include<fstream> #include<iostream> using namespace std; int main() { ofstream out("D://wang//test.txt");//寫資料到指定目標資料夾,這個資料夾
spring註解的方式讀取properties檔案中的內容
在spring的配置檔案ApplicationContext.xml中加入. <!-- 載入所有的properties檔案,方便類中用spring註解方式獲取 --> <bean id="configProperties" class="org.spri
Java向Properties檔案中寫入內容
String filePath = "H:\\final\\code\\Servlet_Ajax\\src\\test\\aa.txt"; Properties prop = new Properties(); try { InputStream fis
MyEclipse中web開發修改類檔案和配置檔案不重啟伺服器的方法
在java web實際開發中我們在修改配置檔案與java程式碼時往往會重新部署或者重新啟動tomcat伺服器,為了提高開發效率,現總結以下方法以在網路共享(高手莫看) 一 、修改struts2配置檔案不用重啟方法 方法1: 在src目錄下新建一個檔案struts.pro
jQuery .html()用為讀取和修改元素的HTML標籤 對應js中的innerHTML[通過ID獲取元素]
node2:/var/www/html/jquery/aa#cat a7.html <html> <body> <div id='ID'>測試頁面</div> <script type="text/javascript
spring xml讀取Properties檔案中的加密欄位
spring的xml配置檔案,能夠方便地讀取properties檔案中的值。 讀取單個屬性檔案: <bean class="org.springframework.beans.factory.c