1. 程式人生 > >專案打jar包讀取外部檔案問題

專案打jar包讀取外部檔案問題

可以用如下方式,實現在jar包中讀取外部配置檔案。

方法一:

關鍵程式碼。

讀取properties檔案方法:

InputStream ins = getClass().getResourceAsStream("/resource/dbconfig.properties"); 

 

但是log4j.xml 又需要單獨處理:

PropertyConfigurator.configure(System.getProperty("user.dir") + "/resource/log4j.xml"); 

 

方法二:

配置檔案out.properties和jiar包在同一個目錄下面:

FileInputStream inputStream1 = new FileInputStream("out.properties");  

 

配置檔案in.properties在jar包內部:

InputStream inputStream2 = a.class.getResourceAsStream("/in.properties");  

 

import java.io.*;

public class census {
	public static void main(String[] args)  throws IOException {
		System.out.println("開始執行");
			//檔案位元組流獲取檔案
			InputStream is = new FileInputStream(args[0]);
			// 將位元組輸入流轉化成字元輸入流,並設定編碼格式,InputStreamReader為 Reader 的子類
			InputStreamReader isr = new InputStreamReader(is, "UTF-8");
			// 使用 BufferedReader 進行讀取
			BufferedReader br = new BufferedReader(isr);
	        String line = null;
	        //網友推薦更加簡潔的寫法
	        while ((line = br.readLine()) != null) {
	        	System.out.println(line);
	        }
	        br.close();
	        System.out.println("結束執行");
	}