자바로 파일복사 질문있어용...
-
게시물 수정 , 삭제는 로그인 필요
파일정보를 담은 DB에서 파일경로 및 파일명을 불러온상태인데요
단 건으로 절대경로를 지정해주면 복사가 아주 잘되는데,
for문으로 감싸서 여러폴더에 있는 파일들의 경로정보를 불러온뒤에 복사를하면 0바이트로 복사가됩니다ㅠ
코드 한번만 봐주세요.
InputStream inStream = null;
OutputStream outStream = null;
for(int i = 1; i <= dataSet.getRowCount(); i++){
try{
inStream = new FileInputStream(DB에서 불러온 파일경로정보);
outStream = new FileOutputStream("C:/download/"+DB에서 가져온 새로 입력할 파일이름);
byte[] buffer = new byte[1024];
while((length = inStream.read(buffer)) > 0){
outStream.write(buffer, 0, length);
}
} catch(IOException e) {
e.printStackTrace();
} finally {
inStream.close();
outStream.close();
}
}
이렇게 반복문을 줘서 DB에서 불러온 파일경로정보 및 파일명을 준다음에 실행했는데, 결과는 0kb...
반대로 for문을 빼고, 복사할 파일의 절대경로를 지정한 후 복사 될 곳의 폴더지정+"파일이름.확장자명"
이렇게 단 건씩 했을때는 매우매우 잘됩니다...
왜 반복문수행을하면서 0kb로 되는걸까요 ㅠㅠ?
도와줍숑....ㅠㅠㅠ
try{inStream = new FileInputStream(DB에서 불러온 파일경로정보);outStream = new FileOutputStream("C:/download/"+DB에서 가져온 새로 입력할 파일이름);byte[] buffer = new byte[1024];while((length = inStream.read(buffer)) > 0){outStream.write(buffer, 0, length);}} catch(IOException e) {e.printStackTrace();} finally {inStream.close();outStream.close();}