私はJavaで働いています!2 つの「Ö」でマークした部分には「no return statement」エラーが発生し、「// <----ÄÄÄ」でマークした部分では「unreachable statement」エラーが発生します。コードのその部分は、ファイルを含むディレクトリ/フォルダーを削除することになっており、実際にはそれ自体で機能します。しかし、私のコードの残りの部分でそれを動作させることはできないようです! 助けていただければ幸いです。
一般に、これはディレクトリのサイズをチェックし、ディレクトリとその内容を削除して、同じ名前の新しいディレクトリを作成するプログラムです。
$package delete.file.or.dir;
import java.io.*;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class DeleteFileOrDir{
public static void main (String [] args){
// The directory in question
File file = new File("C://123");
long fileSize = file.length();
System.out.println("File size in bytes is: " + fileSize);
System.out.println("File size in KB is : " + (double)fileSize/1024);
System.out.println("File size in MB is :" + (double)fileSize/(1024*1024));
//Bad yes no statement
JOptionPane pane = new JOptionPane(
"Y=Yes\nN=No");
Object[] options = new String[] { "Y", "N" };
pane.setOptions(options);
JDialog dialog = pane.createDialog(new JFrame(), "Dilaog");
dialog.show();
Object obj = pane.getValue();
int result = -1;
for (int k = 0; k < options.length; k++)
if (options[k].equals(obj))
result = k;
System.out.println("User's choice: " + result);
//Delete Directory with files
deleteDirectory(new File("C://123"));
}
//The first line of text just below is the first problem Ö
static public boolean deleteDirectory(File path) {
if( path.exists() ) {
File[] files = path.listFiles();
for(int i=0; i<files.length; i++) {
if(files[i].isDirectory()) {
deleteDirectory(files[i]);
}
else {
files[i].delete();
}
}
}
return( path.delete() );
File dir= new File("C://123"); // This gives me "unreachable statament Ä"
boolean isDirectoryCreated = dir.mkdir();
if(isDirectoryCreated)
System.out.println("Reset");
else
System.out.println("Error");
}
}