0

HttpUrlConnection 및 InputStream을 통해 데이터를 다운로드 할 수 있지만 원시 데이터를 다운로드해야합니다. 그래서 RawData를 통해 DownloadManager를 생성 한 다음이 데이터를 이진 또는 이미지 형식으로 변환하는 원시 데이터를 사용하려고합니다. 내 연구에 따르면, "URL에서 파일 다운로드"를 볼 수 있지만 Mac에서 파일을 다운로드 할 수 없습니까? 항상 FileNotFoundException이 발생합니다. 도와주세요. 어떻게 URL에서 데이터를 다운로드 할 수 있습니까? 당신은 가능한 다운로드 관리자를 구성하려면URL에서 데이터를 다운로드하는 방법은 무엇입니까?

public class DownloadData extends AsyncTask<Void,Void,Void> { 
@Override 
protected Void doInBackground(Void... params) { 

    try { 
     downloadData("https://blablalabla/get"); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
    return null; 
} 

public void downloadData(String myurl) throws IOException { 
    URL u = new URL(myurl); 
    InputStream is = u.openStream(); 

    DataInputStream dis = new DataInputStream(is); 

    byte[] buffer = new byte[1024]; 
    int length; 

    OutputStream fos = new FileOutputStream(new File(Environment.getExternalStorageDirectory() + "/Users/ilknurpc/Desktop/text.docx")); 
    while ((length = dis.read(buffer))>0) { 
     fos.write(buffer, 0, length); 
    } 


} 
} 
+0

최소한 코드의 관련 발췌문을 보여주십시오. – Fang

답변

0

, 난 당신이 Tomcat Default Servlet Implementation 를 살펴 제안했다.

적절한 구현을 위해 E-Tags 및 Http Range Headers와 같이 이해해야하는 몇 가지 HTTP 헤더가 있습니다.

고맙게도 Tomcat 기본 서블릿이 전제 조건을 처리합니다.

사소한 변경 (패키지 선언 등)으로 코드에서이 서블릿을 적용 할 수 있습니다.

관련 문제