我需要合适AcionListener我的JTable.
在程序启动时,默认情况下不会选择任何行.如果我现在选择任何一行,JTable那么ActionListener应该开始.
我有一个方法fileUpload()打开FileChooser-Menu.如果我选择一个文件,那么绝对路径和文件大小写在控制台上.首先我只尝试这个:
System.out.println(file.getAbsolutePath()); // Print: C:\Users\Anonym XY\Desktop\test.txt\C:\Users\Anonym XY\Desktop\test.txt
System.out.println(file.length()); // Print: "0"
Run Code Online (Sandbox Code Playgroud)
但是对于绝对路径,我得到绝对路径,但双重打印?!Oo和文件大小我到这里0,这是假大小.
如果我这样:
System.out.println(fileChooser.getSelectedFile().length()); // Print: "15747840"
Run Code Online (Sandbox Code Playgroud)
然后我得到正确的文件大小.
我的整个方法:
public void fileUpload() {
JFileChooser fileChooser = new JFileChooser();
if(fileChooser.showOpenDialog(null)==JFileChooser.APPROVE_OPTION) {
File file = new File(fileChooser.getSelectedFile() ,fileChooser.getSelectedFile().getAbsolutePath());
System.out.println("Path: " + file.getAbsolutePath()); // Print: "Path: C:\Users\Anonym XY\Desktop\test.txt\C:\Users\Anonym XY\Desktop\test.txt"
System.out.println("Filesize: " + fileChooser.getSelectedFile().length()); // Print: "Filesize: 15747840"
System.out.println("Filesize: " + file.length()); // Print: "Filesize: 0"
}else if(fileChooser.showOpenDialog(null)==JFileChooser.ERROR_OPTION) {
System.out.println("Error");
}
}
Run Code Online (Sandbox Code Playgroud)