자바로 인터넷에서 파일을 다운로드하고 저장하는건 어떻게 하나요?

발생하는 문제 및 실행환경

http://www.example.com/information.asp 이런 사이트에서 파일이 있으면 그걸 폴더에 저장을 하고싶은데요. 온라인의 파일을 라인 바이 라인으로 읽는건 아는데 다운로드하고 저장하는건 어떻게하는지 모르겠어요.

1답변

  • 좋아요

    0

    싫어요
    채택취소하기

    JAVA NIO를 써보세요

    URL website = new URL("http://www.website.com/information.asp");
    ReadableByteChannel rbc = Channels.newChannel(website.openStream());
    FileOutputStream fos = new FileOutputStream("information.html");
    fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
    

    transferFrom()메소드는 실제로 복사하지않고 파일시스템 캐시 안에 바이트를 전송할수있어서 단순히 루프를 돌아 읽는것보다 훨씬 효율적이에요.

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.