Java从文本文件中获取行,创建新文本文件并插入
在我的代码中,我有这个GUI动画,我想通过自动创建一个新的文本文件,使其创建的动画功能更加通用Java从文本文件中获取行,创建新文本文件并插入,java,Java,在我的代码中,我有这个GUI动画,我想通过自动创建一个新的文本文件,使其创建的动画功能更加通用 String getGUI = "res/worldSaves/GUI_Frames_List.txt"; String writeGUI = "res/worldSaves/GUI_Cancel_Object.txt"; private void getGUISymbol(String getGUIFrame) { try { ProcessCoords ge
String getGUI = "res/worldSaves/GUI_Frames_List.txt";
String writeGUI = "res/worldSaves/GUI_Cancel_Object.txt";
private void getGUISymbol(String getGUIFrame)
{
try
{
ProcessCoords get = new ProcessCoords(getGUI);
String[] getaryLines = get.OpenFile();
ProcessCoords data = new ProcessCoords(writeGUI);
int i;
for (i = 0; i < getaryLines.length; i++)
{
if(getaryLines[i].startsWith(getGUIFrame))
{
System.out.println("current = " + getaryLines[i]);
data.writeToFile("GUI"+getaryLines[i]); // this needs to generate a new text file - how?
}
}
}
catch(IOException e) {
System.out.println(e.getMessage());
}
}
此代码应生成该文件,除非出现某种异常。例如,您没有在当前工作目录中写入/创建文件的权限。 作为旁注,无论何时进行IO,最好使用try with resources构造来确保始终调用close,例如
try (FileWriter write = new FileWriter(path, append_to_file);PrintWriter print_line = new PrintWriter(write)) {
print_line.printf("%s" + "%n", textLine);
}
要创建临时文件传递,例如file.createTempFilepath,txt,而不仅仅是FileWriter构造函数的路径你的ProcessCoords.writeToFile方法是什么样子的?我已经更新了答案,它现在就在那里。。当我删除GUI\u Cancel\u Object.txt文件时,它仍然有效,我希望在我的worldSaves文件夹中看到文本文件,但它没有出现。。这就是我困惑的原因…是的。。仍然不能正常工作,文件应该会出现,对吗?哦,那很有趣。。ProcessCoords中的writeToFile方法正是这样,我现在删除了GUI\u Cancel\u Object.txt文件,它工作正常。。我只是希望在worldSaves文件夹中看到创建后的文本文件,但它不会出现在任何地方。。应该是这样吗?不,等等。。我不明白,它仍然不能正常工作。。谢谢你的回答,我想我的代码中一定有一个bug。好了,现在可以了。。文件正在创建中,只是eclipse没有显示它。。一切都很好-非常感谢!是的,我认为您需要在工作区上点击F5以刷新Eclipse中的文件系统更改,刷新没有改变任何东西-不知道为什么,但它可以工作,这是重要的:
try (FileWriter write = new FileWriter(path, append_to_file);PrintWriter print_line = new PrintWriter(write)) {
print_line.printf("%s" + "%n", textLine);
}