我有一個文本文件。它有配置信息。這個文件應該保存在外面,以便在任何時候可以改變這個文件的內容。運行時,應從中讀取內容。我正在使用netbeans,我嘗試使用ClassLoader,在構建後,dist文件夾沒有config_text.txt文件。有沒有這樣做,就像我們在netbeans中添加庫文件(jar)一樣?配置文件的位置
Q
配置文件的位置
1
A
回答
1
你怎麼看?如果該文件位於項目根目錄(例如build.xml中),則可以像File f = new File("my file.txt");
那樣訪問它 - 但NB不會將其移動到文件夾中。
Btw。建設不會添加任何文件,但庫和您的jar文件夾。也許你可以嘗試改變螞蟻腳本。看看build.xml
以及。
0
如果您將文件添加到NetBeans項目目錄中的「src」文件夾中,那麼它應自動放置在dist文件夾和您構建的任何jar的相同位置。無論如何,它適用於我,我運行的是Windows 7x64和NetBeans 7.1.2,例如在放置一個文件:
*的NetBeansProjects \ PROJECT_NAME的\ src \ PACKAGE_NAME \ config_text.txt
應該自動把這裏的文件:
* \的NetBeansProjects \ PROJECT_NAME \建立\ classes \ PACKAGE_NAME \ config_text.txt
然後,您可以使用getResource()方法訪問它。
編輯:
難道說你運行一個「清理並生成」,而不僅僅是「建設」?第一個將刪除「dist」文件夾中的所有內容並重新生成內容,第二個將僅重新創建Jar並將其他文件(例如config_text.txt)保留在原來的位置。
0
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
public class ConfigHandler {
private static final String PROPERTIES_FILE = "/home/myConfigFile.properties";
private static final Properties PROPERTIES = new Properties();
static {
loadPropertyFile(PROPERTIES_FILE);
}
private static void loadPropertyFile(final String path) {
InputStream is = null;
try {
is = new FileInputStream(path);
PROPERTIES.load(is);
} catch (IOException e) {
throw new RuntimeException("Failed to load property file", e);
} finally {
if (is != null) {
try {
is.close();
} catch (IOException ex) {
}
}
}
}
public void reLoadPropertyFile() throws IOException {
loadPropertyFile(PROPERTIES_FILE);
}
public static String getProperty(String key) {
return PROPERTIES.getProperty(key);
}
}
在代碼中的任何地方讀取配置值:
String somePropertyValue = ConfigHandler.getProperty("someProperty");
要重新加載配置文件: ConfigHandler.reLoadPropertyFile();
0
我經常使用的user.home
屬性創建配置文件。在我的情況下,我檢查該文件是否存在於user.home
目錄中。如果沒有,那麼我從我的應用程序中導出一個副本,或者將默認屬性寫入該文件。你可能想嘗試這種方法。使用user.home
目錄也可以跨平臺保持一致。
相關問題
- 1. Boto3:配置文件位置
- 2. Capistrano的配置文件的位置
- 3. 配置文件的默認位置 - MacOS?
- 4. .rpmmacros文件的可配置位置
- 5. Websphere Application Server配置文件的位置
- 6. Eclipse中devmode配置文件的位置?
- 7. SSIS配置文件的動態位置
- 8. 保存配置文件locaction的位置?
- 9. windows azure中的配置文件位置
- 10. HHVM配置文件的位置
- 11. Nginx的位置配置(子文件夾)
- 12. PostgreSQL配置文件的備用位置
- 13. 指定.Net配置文件的位置
- 14. 芹菜配置文件位置
- 15. 內核配置文件位置在android
- 16. SSIS XML配置文件位置
- 17. XCode供應配置文件位置
- 18. Tomcat屬性配置文件位置
- 19. drupal 7配置文件位置
- 20. php.ini配置文件位置和加載的配置文件之間的區別?
- 21. 漫遊用戶配置文件密碼文件的位置
- 22. dynamicaly設置nginx的位置配置文件
- 23. 在gem中放置/訪問配置文件的位置?
- 24. 將配置文件放置在JAR中的位置?
- 25. 將安全配置文件放置在WAR中的位置?
- 26. 在配置文件中放置c3p0屬性的位置?
- 27. 設置php-fpm的默認配置文件位置
- 28. 葡萄配置文件的設置位置
- 29. 在Python中放置配置文件的位置?
- 30. Graphite的配置文件位於何處?
你是如何建立你的項目?你使用maven還是ant? – Ilya
Netbeans默認使用ant,我認爲 – FirmView