FileUpload получить расширение файла - PullRequest
14 голосов
/ 29 ноября 2011

Я пытаюсь загрузить файл и изменить его имя ниже. Мне нужно получить расширение файла. В приведенном ниже коде подчеркивается «Путь». Я пропустил оператор использования? Или какой правильный синтаксис для того, что я делаю?

if (FileUpload1.HasFile)
try
{
    var FileExtension = Path.GetExtension(FileUpload1.PostedFile.FileName).Substring(1);                    

    var newName = DateTime.Now.ToLongDateString();
    //Map path to folder
    string realpath = Server.MapPath("Pictures\\") + Guid.NewGuid() + FileExtension;                      

    FileUpload1.SaveAs(realpath);

    Label1.Text = "File name: " +
        FileUpload1.PostedFile.FileName + "<br>" +
        FileUpload1.PostedFile.ContentLength + " kb<br>" +
        "Content type: " +
        FileUpload1.PostedFile.ContentType;
}
catch (Exception ex)
{
    //Handle the error
    throw ex;
}
else
{
    Label1.Text = "You have not specified a file.";
}

Ответы [ 4 ]

32 голосов
/ 29 ноября 2011
FileInfo fi = new FileInfo(fileName);
string ext = fi.Extension;
12 голосов
/ 29 ноября 2011

"Путь" Я пропустил оператор использования?

Вы должны добавить

using System.IO; 

в список пространств имен

1 голос
/ 29 ноября 2011

Код, который вы предоставили, выглядит нормально (и работает на моем компьютере).

Единственное, что я могу видеть, что вы можете отсутствовать, это оператор using для System.IO.

0 голосов
/ 15 июля 2019

Используйте этот код:

string extension=System.IO.Path.GetExtension(file1.FileName);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...