プロが教える店舗&オフィスのセキュリティ対策術

ファイルをコピーしたいと思っております。
topディレクトリがAAAでその下のサブディレクトリとファイルがあり、それをBBBというディレクトリにそのままコピーしたいのですができません。ファイルを読み込むまではできたのですが、出力方法がわかりません。どなかか教えてください。


AAA/--
--/1A7/sam.txt
--/2B3/sam.txt
--/3C5/sam.txt

コピー↓↓↓↓↓↓↓↓↓↓↓↓↓

BBB/--
--/1A7/sam.txt
--/2B3/sam.txt
--/3C5/sam.txt


途中までのsourceです

import java.io.*;

public class copyfile {
public static void main(String[] args) {
File file = new File("/AAA/");
File[] fileList = file.listFiles();

for(int i=0;i<fileList.length;i++){
System.out.println(fileList[i].getName());
}

}
}

A 回答 (1件)

そういえばJavaってcopyってどうやるんですかね?


自分だったら

for(必要な数だけループ){
作成したいファイルの新しいFileインスタンス(ファイルのパスでもいい)を作る
読み込みたいファイルのBufferedInputStreamを作る。
それにBufferedOutputStreamを使って書き込む
}
こんな感じで1個いっこう読み書きしていくのだと思います。

読み書き自体は

BufferedInputStream bis = new BufferedInputStream(new FileInputStream(コピーもと));
BufferedOutStream bos = new BufferedOutStream (new FileOutputStream(コピー先));
int n;
while((n=bis.read())!=-1){
 bos.write(n);
}
bis.close();
bos.close();

みたいな感じできるとおもいます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!