1

ディレクトリを作成し、そのディレクトリに入り、ファイルをコピーしたいと思います。これはJavaで可能ですか?

4

3 に答える 3

1

はい。

File.mkdir()を使用してディレクトリを作成できます

ファイルをコピーするために、他のAPIがあります。これは、公式のJavaチュートリアルの関連ページで、例へのリンクがあります。

このコピーを作成するために現在のディレクトリを変更する必要はないことに注意してください。

于 2012-04-25T00:46:32.973 に答える
1

コモンズの1つ-ioのcopyDirectory()copyFile()、またはcopyFileToDirectory()メソッドがこれらすべてを処理します。存在または非存在を心配する必要はありません。

于 2012-04-25T01:14:22.607 に答える
1

ディレクトリを作成し、そのディレクトリに入り、ファイルをコピーしたいと思います。これはJavaで可能ですか?

ディレクトリの作成が可能です。File.mkdirまたはを使用しFile.mkdirsます。

ディレクトリへのファイルのコピーが可能です。何から/どこからコピーするかに応じて、それを行うには多くの方法があります。

ディレクトリを入力するということは、新しいディレクトリをJVMの「現在のディレクトリ」にすることを意味していると思います。残念ながら、標準のJavaではこれを行うことができません。JVMの現在のディレクトリを変更する方法はありません。でも:

  • あなたがしようとしていることをするためにディレクトリを変更する必要はありません...ファイルを新しいディレクトリにコピーします。

  • 一般に、現在のディレクトリの概念を必要とするアプリケーション(アプリケーション全体、または個々のスレッド)は、関連する現在のディレクトリを表すに関連するFileオブジェクトを作成することで実装できます。File

Java設計者が「chdir」機能をサポートしないことにした理由はわかりません。でも:

  • 一部のOSプラットフォームは、ディレクトリの変更をネイティブにサポートしていない場合があり、Javaでこの機能を安全かつ効率的にサポートする際に問題が発生します。(JVMは、パス名をOSに渡す前に、絶対パスマッピング自体に対して実行する必要があります。また、競合状態を回避する必要がある可能性があります。)

  • 「chdir」(たとえば、UNIX / Linuxでネイティブにサポートされている)がプロセス全体に影響を与えるという事実は、マルチスレッドJavaアプリケーションで問題になる可能性があります。

于 2012-04-25T01:32:28.510 に答える