آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

دانلود فایل از سرور

Rabbit  10 سال پیش  10 سال پیش
0 0

سلام،

طبق آموزش‌های داده شده قصد دانلود فایل (mp3) از سرور رو دارم. وقتی روی Localhost هستم دانلود میشه و مشکلی ندارم ولی وقتی میرم روی سرور خودم برنامه دانلود نمیکنه و خطای زیر رو میده:

 java.io.FileNotFoundException: http://178.32.***.***/music-directory/s101.mp3

با browser تست کردم و سرور مشکلی نداره. به جای سرور خودم از سایت‌های دیگه هم استفاده کردم و همین خطا رو میده 

 

 برای این سوال 1 پاسخ وجود دارد. مشاهده پاسخ صحیح
پاسخ به سوال 
Rabbit  10 سال پیش
+1 0

 پاسخ صحیح

 کد کلاس دانلود:

 public static void download(final String downloadPath, final String filePath, 
final OnProgressDownloadListener listener) { Thread thread = new Thread(new Runnable() { @Override public void run() { try { URL url = new URL(downloadPath); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("GET"); connection.setDoOutput(true); connection.connect(); final int fileSize = connection.getContentLength(); int downloadSize = 0; File file = new File(filePath); if (file.exists()) { file.delete(); } FileOutputStream outputStream = new FileOutputStream(filePath); InputStream inputStream = connection.getInputStream(); byte[] buffer = new byte[G.DOWNLOAD_BUFFER_SIZE]; int len = 0; while ((len = inputStream.read(buffer)) > 0) { outputStream.write(buffer, 0, len); downloadSize += len; final float downloadPercent = 100.0f * ((float) downloadSize / fileSize); if (listener != null) { final int finalDownloadSize = downloadSize; G.handler.post(new Runnable() { @Override public void run() { listener.onProgressDownload((int) downloadPercent, finalDownloadSize, fileSize); } }); } } } catch (Exception e) { e.printStackTrace(); } } }); thread.start(); }

 


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .