2014-11-29 1 views
0

Это код:Как я могу получить из FileInfo [] полное имя полного имени файла, включая расширение файла?

FileInfo[] flist = d.GetFiles(); 
if (flist.GetLength(0) > 0) 
{ 
    foreach (FileInfo txf in flist) 
    { 
     string fn = txf.FullName + txf.Extension; 
    } 
} 

Если я делаю только FULLNAME это даст мне имя каталога + файла, но без расширения. И если я это делаю: string fn = txf.FullName + txf.Extension; Расширение пустой ""

мне нужно, чтобы получить его полное, как это для exmaple: C: \ test.png Или что п будет содержать: C: \ TEMP \ реж \ testing.jpg

Полный путь к каталогу + полное имя файла + расширение имени файла

+1

См. [Методы System.IO.Path] (http://msdn.microsoft.com/en-us/library/system.io.path_methods%28v=vs.110%29.aspx). – abatishchev

+1

Когда я это делаю - 'var fi = new FileInfo (@" X: \ Folder \ Subfolder \ file.ext "); Console.WriteLine (fi.FullName); '- Я получаю полный путь, включая расширение. – Enigmativity

+1

И вам здесь не нужно ни 'GetLength (0)> 0', ни' Length> 0'. – abatishchev

ответ

3

Согласно documentation, FullName поле FileInfo объекта включает в себя полный путь, имя файла и расширение файла (FileInfo наследует FullName от FileSystemInfo). Так что это больше похоже на код, который отвечает за создание этих файлов, не добавляет правильное расширение (Предполагая, что d - это DirectoryInfo, а не другой - возможно, домашний - класс).

Смежные вопросы