2011-07-27 11 views
1

ファイルを別のディレクトリに保存したいと考えています。私はJFileChooserがファイルを選択するために使用できることを知っています。しかし、出力ストリームのようなものを使用するのではなく、Javaのある場所から別の場所にファイルを移動する方法はありますか?JFileChooserを使用してファイルを保存する

答えて

2

同じローカルディスクファイルシステム上にある場合にのみ、File#renameTo()を使用できます。

File sourceFile = createItSomehow(); 
File targetFile = chooser.getSelectedFile(); 

boolean renamed = sourceFile.renameTo(targetFile); 

if (!renamed) { 
    // Well, perhaps they are not on the same disk? 
} 

その他のケースでは、ストリーミングを行うだけで本当に便利です。また、リンクJavadocを参照してください:

このメソッドの動作の

多くの側面は、本質的に、プラットフォームに依存している:名前の変更操作を別のファイルシステムからファイルを移動することはできないかもしれません、それはアトミックではないかもしれない、と宛先抽象パス名を持つファイルがすでに存在する場合、成功しない可能性があります。名前変更操作が成功したことを確認するには、戻り値を常にチェックする必要があります。

関連する問題