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

조회수 2304회

발생하는 문제 및 실행환경

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

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)