Image Alt

자바 http 다운로드

자바 http 다운로드

Java의 java.net.URL 클래스는 인터넷에서 데이터에 액세스하고 조작하는 여러 방법을 제공하는 기본 제공 라이브러리입니다. 이 경우 URL 클래스의 openStream() 함수를 사용합니다. openStream() 함수에 대한 메서드 서명은 : 다행히 Java는 버퍼링없이 2 채널 간에 바이트를 직접 전송하는 메서드가있는 NIO 패키지를 제공합니다. 데이터 집합을 다운로드하고 만드는 응용 프로그램을 만들려면 Java 코드를 통해 파일 다운로드를 자동화하는 데 필요한 기본 정보를 알아야 합니다. 기본 사항을 올바르게 적용하면 백 엔드 서버 응용 프로그램이든 Android 앱이든 관계없이 고유한 요구 집합에 사용하는 데 도움이 됩니다. Java 코드를 사용하여 파일을 다운로드하는 방법에는 여러 가지가 있습니다. 다음은 작업을 수행하는 방법에 대한 몇 가지 방법입니다. 범위는 마지막으로 다운로드한 바이트에서 시작하여 원격 파일 크기에 해당하는 바이트로 끝납니다. 읽기 가능한 ByteChannel 클래스는 URL에서 콘텐츠를 읽을 수 있는 스트림을 만듭니다. 다운로드한 내용은 해당 파일 채널을 통해 로컬 시스템의 파일로 전송됩니다.

참고: 일부 서버에서는 알 수 없는 클라이언트의 다운로드를 허용하지 않으므로 HTTP 요청에 `사용자 에이전트` 헤더를 추가해야 할 수 있습니다. 이제 다음 섹션에서는 핵심 Java 기능 구성 요소 대신 타사 라이브러리를 사용하여 URL에서 파일을 다운로드하는 방법을 살펴볼 것입니다. 파일을 다운로드하는 데 사용할 수 있는 가장 기본적인 API는 Java IO입니다. URL 클래스를 사용하여 다운로드하려는 파일에 대한 연결을 열 수 있습니다. 파일을 효과적으로 읽으려면 openStream() 메서드를 사용하여 InputStream: 다운로드할 데이터는 엔터티 개체 내에 캡슐화되고 getContent() 함수를 사용하여 추출할 수 있습니다. getContent() 함수는 성능을 향상시키기 위해 BufferedInputStreamReader와 함께 추가로 사용할 수 있는 InputStream 개체를 반환합니다. 이제 파일의 총 콘텐츠 크기가 있으므로 파일이 부분적으로 다운로드되었는지 확인할 수 있습니다. 그렇다면 디스크에 기록 된 마지막 바이트에서 다운로드를 다시 시작합니다 : 코드 줄 수를 낮추려면 Java 7에서 사용할 수있는 Files 클래스를 사용할 수 있습니다. Files 클래스에는 모든 바이트를 한 번에 읽은 다음 다른 파일로 복사하는 메서드가 포함되어 있습니다.

다운로드한 콘텐츠가 FileOutputStream에 배치되는 방법은 다음과 같습니다: ReadableByteChannel 클래스의 transferFrom() 메서드를 사용하여 지정된 URL에서 파일 채널로 바이트를 다운로드합니다. 다운로드한 콘텐츠를 처리하기 위해 AsyncCompletionHandler 처리기를 등록: 미러를 사용하여 릴리스 빌드를 다운로드하는 것이 좋지만 기본 배포판에서 다운로드한 서명을 사용하여 다운로드한 파일의 무결성을 확인해야 합니다. 디렉터리.