2012-01-01 26 views
1

Javaアプリケーションのメインディレクトリに(特定の名前の)フォルダを作成する方法はありますか?ゲームにユーザーシステムがあり、新しいユーザーが作成されるたびに、進行中のすべてを保存するフォルダを作成したい(フォルダ名は入れた名前にする必要があります)。主なディレクトリがある場合Javaアプリケーションのルートディレクトリにフォルダを作成する方法は?

enter image description here

答えて

1

File f = new File("TestDir"); 
try{ 
    if(f.mkdir()) 
    System.out.println("Directory Created"); 
    else 
    System.out.println("Directory is not created"); 
}catch(Exception e){ 
    e.printStacktrace(); 
} 
+0

f.mkdir()の 'd 'は小文字にする必要があります。 –

0

:(ただのゲームでは、ユーザー名を入力することによって)これに

enter image description here

:このことから

:たとえば

あなたのアプリケーションの作業指示は、ディレクトリを作成することができます

から
new File("new-dir").mkdir(); 
1

"あなたのJavaアプリのメインディレクトリ" を定義しますか?そのような獣はありません。

セキュリティ上の理由から、このような作業を行う場合は非常に慎重にしたいと考えています。プロパティファイル内のディレクトリを定義し、それをアプリケーションのベースディレクトリとして使用することをお勧めします。それで、すでに述べたように、あなたが望むものを達成するのはちょうど.mkdir{,s}()の使用です。

@ C.Reedも、mkdir()の戻り値をチェックするべきだと正しく言っています。JavaのFile APIは、ディレクトリ/ファイルの作成/移動が失敗したときに例外をスローしないという点で大きな欠陥があります。幸運なことに、Java 1.7は新しいAPIでそれを解決します。

(私が遭遇した例では、ファイルには.move()がありませんでした。問題は、開発者のマシン上で動作しますが、本番マシンでは、別のファイルシステム上でディレクトリを移動することでした。 )

ヒント:既知かつ再現経路のサブディレクトリ内部ディレクトリを確立し、Apacheのcommons-io

1

を使用します。

  1. E.G.メインクラスのパッケージ名に基づいたディレクトリ構造 - これは他のアプリケーションとの衝突を避けるのに役立ちます。
  2. 良い場所はuser.homeです。これは、ゲームが読み書きできるディレクトリでなければなりません。
関連する問題