私はダウンロード用にこのコードを書きました。pdf
ファイルurl
はurl
これです-
String fileURL= "http://www.vivekananda.net/PDFBooks/History_of_India.pdf";
これをコーディング
public static void DownloadFile(String fileURL, File directory) {
try {
FileOutputStream f = new FileOutputStream(directory);
URL u = new URL(fileURL);
HttpURLConnection c = (HttpURLConnection) u.openConnection();
c.setRequestMethod("GET");
c.setDoOutput(true);
c.getResponseCode();
c.connect();
InputStream in = c.getInputStream();
byte[] buffer = new byte[1024];
int len1 = 0;
while ((len1 = in.read(buffer)) > 0) {
f.write(buffer, 0, len1);
}
f.close();
} catch (Exception e) {
e.printStackTrace();
}
}
しかし、これは応答コード 405 のファイルが見つからない例外を示しています。なぜこれが起こったのかわかりません。助けてください..!!
これは、SDカードにファイルを作成した私のコードです-
これをコーディング
public void createPdfFile(){
String extStorageDirectory = Environment.getExternalStorageDirectory()
.toString();
File folder = new File(extStorageDirectory, "pdf");
folder.mkdir();
file = new File(folder, "storrage_data.pdf");
try {
file.createNewFile();
} catch (IOException e1) {
e1.printStackTrace();
}
}`
この後、onResume(); からこのようにスレッドでダウンロード メソッドを呼び出しています。onCreateからのbeacuseは、「Network On Main Thread」というエラーを表示します。どこが間違っているのか、わかりません:(
これをコーディング
public void downloadFile(){
new Thread(new Runnable() {
@Override
public void run() {
Downloader.DownloadFile(url, file);
showPdf();
}
}).start();
}