我创建了一个使用.txt文件的程序,并且不知道在导出程序时如何使用.txt文件。
只需忽略代码中的注释
即可Scanner cl;
// Creating a JFrame for the change-log
JFrame changelogFrame;
JTextArea changelogText;
JScrollPane scroll;
// Open the change-log file & setup changelogFrame, changelogText and scroll
public void openChangelog() {
// Setting up the changelogFrame
changelogFrame = new JFrame();
changelogFrame.setVisible(false);
changelogFrame.setDefaultCloseOperation(HIDE_ON_CLOSE);
changelogFrame.setSize(500, 500);
changelogFrame.setLocationRelativeTo(null);
changelogFrame.setTitle("Change-log");
// Setting up the changelogText
changelogText = new JTextArea();
changelogText.setEditable(false);
changelogText.setMargin(new Insets(5, 5, 5, 5));
// Setting up the scroll (Scroll-pane for changelogText)
scroll = new JScrollPane(changelogText, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
changelogFrame.add(scroll);
try{
cl = new Scanner(new File("Change-log.txt"));
}
catch(Exception e) {
JOptionPane.showMessageDialog(null, "An error occurred while loading the changelog...", "Error loading changelog", JOptionPane.ERROR_MESSAGE);
}
}
// Read the change-log file
public void readChangelog() {
cl.useDelimiter("\\Z");
String loadChangelog = cl.next();
changelogText.setText(loadChangelog);
changelogFrame.setVisible(true);
}
// Close the change-log file
public void closeChangelog() {
cl.close();
}
当我将程序导出到Runnable JAR file
并尝试加载Change-log.txt
时,它不会加载。我收到错误消息
如何导出我的程序并使用Change-log.txt
而没有任何错误? Change-log.txt
是否未与源代码一起导出?
答案 0 :(得分:1)
您应该在错误消息中包含例外消息。这样,您就可以获得有关出错的更多信息,并可以自行调试。
我认为你想要读出的文件不存在于执行导出程序的文件夹中。在这种情况下,你需要处理这种情况,或者创建它,这取决于你的最终目标
答案 1 :(得分:0)
使用部分代码执行此操作(在切割某些角落时)的简单方法是:
String path = System.getProperty("user.home");
path = (path+"\\Change-log.txt")
cl = new Scanner(new File(path));`
这样你总是把文件放到用户主目录中,在那里通常给出读/写权限,你也可以用其他方法写那个文件,遵循我给你的相同结构
您可能还需要编写一段代码,为用户生成更改日志,如果它不在主目录中。