從作爲可運行jar應用程序導出的Java程序管理文件時遇到問題。從導出爲可運行的.jar文件的Java應用程序中創建,解析和管理XML文件
要加載我已經使用的語法
URL url = MainClass.class.getResource("/LoginOrRegister.png");
應用程序的圖片,我已經配置了我的項目加入其中包含文件的源文件夾的構建路徑,它工作正常。用類似下面的操作發生
我的問題:
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = factory.newDocumentBuilder();
Document doc = docBuilder.newDocument();
...
... (Here I create the whole XML structure)
...
TransformerFactory tf = TransformerFactory.newInstance();
Transformer transformer = tf.newTransformer();
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File("users/familyName.xml"));
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
transformer.transform(source, result);
或者
String userPath = "users/familyName.xml";
File file = new File(userPath);
if (!file.exists()){
JOptionPane jop = new JOptionPane();
......
}
通過執行從Eclipse的正常工作程序,你可以註冊並應用程序創建新的XML文件中,在登錄後,你可以添加,修改和管理你的數據,所以我的問題是:
有沒有辦法創建一個可運行的jar應用程序,允許d同樣的事情? (創建新的文件,從文件加載數據,將數據存儲到文件)
我知道,做一個現有的XML文件的DOM解析我可以做
InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream("blablab.xml");
Document doc = docBuilder.parse(is);
但是,只有當我能做到這一點我已經與所有的數據我的XML文件,我仍然不知道該怎麼做的所有其他操作,我需要做...
是,該文件夾(如「用戶」)中,我要創建文件,並且從中我想加載這些文件在「src」文件夾之外,但仍然不起作用 –
即使它不在您需要放置它的絕對路徑,然後檢查權限您需要對包含目錄具有讀寫權限 –