我有这个java JFrame
来显示当前时间和日期。 Here是截图。
但我已经做了另一种方法来做一些技巧(将文件从目录复制到我电脑上的另一个目录)。我知道这很愚蠢,但我需要一个项目。我在method
中调用此class constructor
。当我打电话时,JFrame
将不会显示。但是方法内部的进程没有任何问题。
以下是名为 processOne()的方法的代码示例以及方法 copyCompleted(),该方法已在方法 processOne() <内部调用/ p>
private static void processOne() throws IOException {
final String directoryWindows = "C:\\Users\\Core i3\\Desktop\\Check me";
File directory = new File(directoryWindows);
File[] fList = directory.listFiles();
for (File file : fList) {
if ((file.isFile() && file.getName().endsWith(".jpg")) || (file.isFile() && file.getName().endsWith(".jpeg")) || (file.isFile() && file.getName().endsWith(".gif")) || (file.isFile() && file.getName().endsWith(".png"))) {
File source = new File(file.getPath());
File dest = new File("C:\\Users\\Core i3\\Desktop\\Banu\\" + file.getName());
if (dest.exists() == false) {
Files.copy(source.toPath(), dest.toPath());
copyCompleted(dest.toString());
} else {
System.out.println("Exists");
}
} else if (file.isDirectory()) {
file.getAbsolutePath();
} else {
System.out.println("ELSE");
File source = new File(file.getPath());
File dest = new File("C:\\Users\\Core i3\\Desktop\\Banu\\" + file.getName());
if (dest.exists() == false) {
Files.copy(source.toPath(), dest.toPath());
copyCompleted(dest.toString());
} else {
System.out.println("Exists");
}
}
}
System.out.println("Finished!");
jButton1.setForeground(Color.blue);
}
这是“ copyCompleted(String filePath)”方法。
public static void copyCompleted(String filePath) {
String fileStr = filePath;
File ff = new File(fileStr);
boolean copyCompleted = false;
if (ff.exists()) {
while (true) {
RandomAccessFile ran = null;
try {
ran = new RandomAccessFile(ff, "rw");
copyCompleted = true;
break;
} catch (Exception ex) {
System.out.println(" still copying ........... " + ex.getMessage());
} finally {
if (ran != null) {
try {
ran.close();
//System.out.println("End");
} catch (IOException ex) {
}
}
ran = null;
}
}
if (copyCompleted) {
System.out.println("Copying");
jButton1.setForeground(Color.green);
} else {
System.out.println("false");
}
} else {
System.out.println("No exists");
}
//System.out.println("End2");
}
►因为我正在调用我的方法“ processOne()”,我的程序的“主要方法”会显示警告以放置{{1}所以我这样说。
try-catch
任何人都可以告诉我我的编码有什么问题吗?
**一切正常,但public static void main(String args[]){
//look and feel setting code is here
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
try {
ClockTime dialog = new ClockTime(new javax.swing.JFrame(), true);
dialog.addWindowListener(new java.awt.event.WindowAdapter() {
@Override
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
dialog.setVisible(true);
} catch (IOException ex) {
Logger.getLogger(ClockTime.class.getName()).log(Level.SEVERE, null, ex);
}
}
});
}
没有出现:(