我知道可能有数百个帖子处理这个确切的问题,但对于我的生活,我无法解决任何问题。我在这个程序中有这个“开放”的案例我已经承诺完成,作为Java练习的开始。我已经让Save功能正常工作了,但是看着这个让我更接近于尝试我的问题。这是我的代码。
if(arg.equals(Editor.fileLabels[0])){
if(Editor.VERBOSE)
System.err.println(Editor.fileLabels[0] +
" has been selected");
filedialog = new FileDialog(editor, "Open File Dialog", FileDialog.LOAD);
filedialog.setVisible(true);
if(Editor.VERBOSE){
System.err.println("Exited filedialog.setVisible(true);");
System.err.println("Open file = " + filedialog.getFile());
System.err.println("Open directory = " + filedialog.getDirectory());
}
}
我在写这个问题之前尝试过解决方案;但是,我看到的所有例子都是各自独立的方法。任何帮助,将不胜感激。 :)
答案 0 :(得分:2)
无论您使用哪种UI框架,在用户关闭后,您只能获得文件对话框的结果。在您的情况下,您已显示对话框并立即希望目录和文件可用。它不会发生,因为对话框可能仍处于打开状态。
此外,所有这些都是基于我的猜测,因为你并没有真正说出错误和期望。
答案 1 :(得分:1)
公共类FileReadWrite {
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
// Open the file that is the first
// command line parameter
FileInputStream fstream = new FileInputStream("Path for the file/filename.txt");
// Get the object of DataInputStream
DataInputStream in = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String strLine;
File file = new File("Path for the file/filename.txt");
Writer writer = new BufferedWriter(new FileWriter(file));
//Read File Line By Line
while ((strLine = br.readLine()) != null) {
// Print the content on the console
System.out.println (strLine);
String[] words = strLine.split("\\s+");
String revrseStrline="";
for(int i=words.length-1;i>=0; i-- )
{
revrseStrline+=words[i]+" ";
}
writer.write(revrseStrline);
writer.write(System.getProperty("line.separator"));
}
// Close the input stream
in.close();
writer.close();
} catch (Exception e) { // Catch exception if any
System.err.println("Error: " + e.getMessage());
}
}
}