ホームページ >Java >&#&チュートリアル >Java の NIO はどのようにしてファイルのコピーを簡素化できるのでしょうか?
Java でのファイルのコピー: 簡潔なアプローチ
Java でファイルをコピーする従来の方法には、ストリームを開いてデータをバッファリングするという面倒なプロセスが含まれます、反復入出力操作を実行します。このアプローチは信頼性がありますが、不必要に冗長で、異なる実装間で差異が生じやすいように見える場合があります。
NIO による救済
幸いなことに、Java の新しい I/O (NIO) ) パッケージでは、ファイルのコピーのための簡素化されたソリューションが導入されています。ここでの重要なメソッドは transferTo と transferFrom で、ファイル間の直接的かつ効率的なデータ転送を可能にします。
包括的な例
ファイルのコピーに NIO を使用する方法を説明します。次の Java コード スニペットを考えてみましょう:
public static void copyFile(File sourceFile, File destFile) throws IOException { if (!destFile.exists()) { destFile.createNewFile(); } FileChannel source = null; FileChannel destination = null; try { source = new FileInputStream(sourceFile).getChannel(); destination = new FileOutputStream(destFile).getChannel(); destination.transferFrom(source, 0, source.size()); } finally { if (source != null) { source.close(); } if (destination != null) { destination.close(); } } }
このコードでは、transferFrom を使用してソース ファイル チャネルからデータを直接転送します。宛先のファイル チャネルに転送します。ファイル サイズは自動的に決定および処理されるため、コピー プロセスが大幅に簡素化されます。
ファイル コピーに NIO を使用する理由
NIO には、従来のアプローチに比べていくつかの利点があります。
以上がJava の NIO はどのようにしてファイルのコピーを簡素化できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。