PDA

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



Mohammad_dn
دوشنبه 28 بهمن 1392, 16:23 عصر
سلام من چطور میتونم type فایل رو به دست بیارم؟؟؟
مثلا type فایل zip عبارت زیره:

application/zip

میخوام تایپ فایل هارو به صورت RunTime به دست بیارم

ببخشید توی عنوان تاپیک عبارت "ض" اضافه هست

mehrzad_ali
دوشنبه 28 بهمن 1392, 17:18 عصر
string FileExtensions = FileUpload1.PostedFile.ContentType;
string[] ValidExtensions = { "image/pjpeg", "image/jpeg", "image/jpg", "image/gif" };
if (Array.IndexOf(ValidExtensions, FileExtensions) < 0)
{
lblMessage.Text = "پسوند های مجاز برای آپلود فایل jpeg و gif می باشند.";
return;
}

Mohammad_dn
دوشنبه 28 بهمن 1392, 17:23 عصر
نمیخوام فرمت فایلو به دست بیارم که..میخوام تایپ فایل رو به دست بیارم

application/zip
image/jpeg

و....

Majid.Stu66
دوشنبه 28 بهمن 1392, 18:21 عصر
با سلام
دوست عزیز تیکه زیر از کد دوستمون جواب سوالتون رو میده در صورتی که بخواید از کنترل فایل آپلود استفاده کنید :


string FileExtensions = FileUpload1.PostedFile.ContentType;
از متد getmimemapping در کلاس mimemapping هم می تونید استفاده کنید که مسیر فایل رو می گیره و MimeType رو بهتون بر می گردونه ( این کلاس فکر کنم در ویژوال 2012 به بعد باشه )

همچنین می تونید کلاس زیر رو ایجاد کنید و از اون استفاده کنید :


public static class MimeMappingStealer
{
// The get mime mapping method info
private static readonly MethodInfo _getMimeMappingMethod = null;

/// <summary>
/// Static constructor sets up reflection.
/// </summary>
static MimeMappingStealer()
{
// Load hidden mime mapping class and method from System.Web
var assembly = Assembly.GetAssembly(typeof(HttpApplication));
Type mimeMappingType = assembly.GetType("System.Web.MimeMapping");
_getMimeMappingMethod = mimeMappingType.GetMethod("GetMimeMapping",
BindingFlags.Instance | BindingFlags.Static | BindingFlags.Public |
BindingFlags.NonPublic | BindingFlags.FlattenHierarchy);
}

/// <summary>
/// Exposes the hidden Mime mapping method.
/// </summary>
/// <param name="fileName">The file name.</param>
/// <returns>The mime mapping.</returns>
public static string GetMimeMapping(string fileName)
{
return (string)_getMimeMappingMethod.Invoke(null /*static method*/, new[] { fileName });
}
}
طرز استفاده :

MimeMappingStealer.GetMimeMapping(path);

kamranetemadi
دوشنبه 28 بهمن 1392, 21:05 عصر
چرا کار رو سخت می کنید؟؟؟؟
به همین سادگی
MimeMapping.GetMimeMapping(path);

Majid.Stu66
دوشنبه 28 بهمن 1392, 21:55 عصر
چرا کار رو سخت می کنید؟؟؟؟
به همین سادگی
MimeMapping.GetMimeMapping(path);

با سلام خدمت شما دوست عزیز
کار رو سخت نکردیم اگه دقت کنید همین مطلب شما تو پست قبلی هم وجود داره!!!

از متد getmimemapping در کلاس mimemapping هم می تونید استفاده کنید که مسیر فایل رو می گیره و MimeType رو بهتون بر می گردونه ( این کلاس فکر کنم در ویژوال 2012 به بعد باشه )
موفق باشید