2015-10-06 62 views
0

我有一个加载从创建的目录中的文件并将其显示在服务器上的Java /骡子应用如本地主机/ file.txt的使用属性文件来设置目录中加载文件

File dir = new File("C:\\folder"); 
     dir.mkdirs(); 
     File file1 = new File(dir, filePath); 

的filepath是从URL - 它采用参数http.request.path eg file.txt并读取文件

是否有反正我可以将硬编码的代码位设置文件夹为mule/java属性文件,而不是硬编码它?

回答

0

您可以将路径放在属性文件中,并使用Java中的Properties类来读取它。 示例代码:

Properties prop = new Properties(); 
InputStream input = null; 
try { 
input = new FileInputStream("config.properties"); 
prop.load(input); 
}catch(IOException e){ 
    //handle exception 
} 

更多details-- 你必须创建一个新的属性文件,它仅仅是一个.properties扩展名的文件。我们称之为sample.properties。您可以放置​​值,这些值是键值对。这是你将如何把值有:

dirpath = /home/dextr/Documents/docs/ 
fileName = puzzle.txt 

你,你将不得不放置特性在应用程序的根文件或者你将不得不提供以读它的相对路径。 然后,使用类似以下代码的代码读取properties对象中的值。根据您需要的值,您使用适当的密钥。

import java.io.FileInputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.util.Properties; 

public class SoSample { 

public static void main(String[] args) { 
    Properties properties = new Properties(); 
    InputStream input = null; 
    try { 
     input = new FileInputStream("sample.properties"); 
     properties.load(input); 
     String dirPath = (String)properties.get("dirpath"); 
     System.out.println(dirPath); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
} 
} 
+0

是否有一种特定的方式来指定属性文件中的路径?目前有它在“路径= C:\\文件夹” – gio10245

+0

这很好。你试过了吗? –

+0

是的,我不知道该怎么改变目录中的代码 - 文件file1 =新文件(dir,filePath);因为dir是硬编码的。加载属性文件中的代码似乎很好,但我确定如何在我的代码中使用它 – gio10245