0

次のコードを使用してフォルダーを作成していますが、フォルダーを作成せず (出力は失敗)、例外はスローされません。

フォルダー java は既に作成されています。フォルダー名を渡して、java フォルダーに作成する必要があります。

private String CreateFolder(String myfolder) {
        try {
            String dir = "../Java/" + myfolder;
            boolean result = false;
            File directory = new File(dir);

            if (!directory.exists()) {
                result = directory.mkdir();

                if (result) {
                    System.out.println("Folder is created");
                    return dir;
                } else {
                    return "failed";
                }
            }
        }catch(Exception e) {
            e.printStackTrace();
        }
        return "";
    }
4

5 に答える 5

6

このようなことを試してください:

  public static void main(String[] args)
{
    String path = "E:\\test";
    createFolder(path);
}

private static boolean createFolder(String theFilePath)
{
    boolean result = false;

    File directory = new File(theFilePath);

    if (directory.exists()) {
        System.out.println("Folder already exists");
    } else {
        result = directory.mkdirs();
    }

    return result;
}

mkdir()を使用する場合は、正しいルート dir パスを使用してください (たとえば、「../somefolder」内にフォルダーを作成する場合は、既に作成されている必要があります) 。

ドライブ名の後に 2 つのスラッシュを設定する必要があることに注意してください。この"E:\\"のように。

詳細については、こちらをご覧ください。

于 2013-06-21T07:14:24.790 に答える
-1

これは Web アプリケーションの一部ですか? 次に、abs パスの代わりにコンテキスト パスを使用します。また、スラッシュ (/) の代わりに File.separator を使用します

于 2013-06-21T07:14:10.843 に答える