PDA

View Full Version : نحوه دانلود فایل و بدست آوردن نام فایل



tanha70
سه شنبه 21 بهمن 1393, 11:56 صبح
سلام
من توی برنامم نیاز دارم تا یه فایل رو دانلود کنم و برای ادامه کار هم نیاز دارم تا اسم فایل رو بدونم.
ممنون میشم در این مورد راهنمایی بفرمایید.

بیتا حکمت
سه شنبه 21 بهمن 1393, 12:08 عصر
استفاده از using System.Net; فراموش نشه



using (WebClient Client = new WebClient())
{
Client.DownloadFile("http://www.abc.com/file/song/a.mpeg", "a.mpeg");
}

tanha70
سه شنبه 21 بهمن 1393, 12:10 عصر
حرف شما درست
ولی من که نمیدونم اسمش a.mpeg هست.
میخوام اسم فایل رو دقیقا بفهمم که چی هست...

بیتا حکمت
سه شنبه 21 بهمن 1393, 12:17 عصر
اگر منظورتون اینکه اسم فایل رو از یک URL بدست بیارین ، با Path.GetFileName میشه انجامش داد



string name;
name = Path.GetFileName("http://audacity.googlecode.com/files/audacity-win-2.0.exe");
MessageBox.Show(name);
name = Path.GetFileName("http://www.abc.com/file/song/a.mpeg");
MessageBox.Show(name);

tanha70
سه شنبه 21 بهمن 1393, 12:19 عصر
خدا بیامرزتتتتتتتت
همینو میخواستم دقیقا
سپاسگزارم

tanha70
سه شنبه 21 بهمن 1393, 13:10 عصر
الان یه سوال دیگه برام پیش اومد.
اگر بخویام بدونیم لینکی که داریم معتبر هست یا نه
منظورم اینه که در لینک حاظر فایلی وچود داره یا خیز، باید از چه کدی استفاده کنیم؟

بیتا حکمت
سه شنبه 21 بهمن 1393, 13:49 عصر
از این متد می تونی استفاده کنی ، اما دقت کن که باید به معنای حقیقی تو فایل اینترنت وجود داشته باشه



public bool URLExists(string url)
{
bool result = true;

try
{
WebRequest webRequest = WebRequest.Create(url);
webRequest.Timeout = 5000; // miliseconds
webRequest.Method = "HEAD";

webRequest.GetResponse();
}
catch
{
result = false;
}

return result;

}




نحوه استفاده :


MessageBox.Show(URLExists("http://s1.asandl.com/software/utilities/file-compression/WinRAR.v5.20.x86_AsanDl.com.zip").ToString());




تست نکردم ، اما احتمال می دم برای دامنه های IR با مشکل مواجه بشه . اگر این اتفاق افتاد خبر بدین تا دوستان حرفه ای راهنمایی کنن .

راه دیگری که به ذهنم می رسه اینکه وقتی Path.getfilename فایلی رو پیدا نمی کنه ، خود ادرس URL رو برمی گردونه ، اگر فایلی هم پیدا کرد اسم فایل رو برمی گردونه ، پس در این صورت
میشه نتیجه گرفت که اگر خروجی Path.getfilename ، برابر با ورودش اش باشه فایلی تو آدرس وجود نداره ( بررسی این موضوع هم با خودتون )

NASA's Spaceman
چهارشنبه 22 بهمن 1393, 02:53 صبح
بدترین راه برای دانلود یک فایل استفاده از System.Net هست چون هیچ دسترسی به دانلود ندارین ولی اگه خودتون کدنویسیش کنین به همه چیزش دسترسی دارین و سرعت دانلود هم سریع تر میشه
با سپاس Spaceman