Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Изменение имени файла


Автор: IvanovIV 18.4.2010, 12:31
Доброго всем времени суток. Извиняюсь, если данный вопрос уже задавался, но я его найти не смог. Суть вопроса в следующем: я пытаюсь в определенной директории (папке) найти все файлы, затем в определенных файлах поменять имя. Найти имена файлов в директории мне удалось:
static void Main(string[] args)
        {
            FileInfo[] NameOfFile;
            DirectoryInfo dir = new DirectoryInfo(@"c:\Программы");
            NameOfFile =dir.GetFiles();
           
            if (NameOfFile.Length == 0)
            {
                Console.WriteLine("В указанной папке нет файлов");
                return;
                
            }
                        
                          Console.ReadLine();
        }
А вот как мне поменять имя файла, например, NameOfFile[1] на "Test.txt"???
Заранее спасибо всем откликнувшимся.

Автор: Экскалупатор 18.4.2010, 12:52
переписать старый файл в новый, потом старый удалить.

Автор: diadiavova 18.4.2010, 13:34
IvanovIV, используй метод System.IO.File.Move или System.IO.FileInfo.MoveTo

Автор: IvanovIV 18.4.2010, 17:08
Такой подход я, конечно, рассматривал. Но он удручает. Это получается, чтобы просто переименовать 100 файлов, понадобиться скопировать 100 Гб и удалить старые. Как-то нерационально. Может существует другой способ???

Автор: diadiavova 18.4.2010, 17:54
IvanovIV, ну да, а мой пост, очевидно невидимый.

Автор: KuMa1104 18.4.2010, 18:17
ИМХО.
IvanovIV когда по одному диску файлы гоняете реального перемещения не происходит. Windows  просто в файловой системе соответствующие записи меняет.
Так что можете смело 100 гигов двигать как вам и советовали.
Цитата(diadiavova @  18.4.2010,  13:34 Найти цитируемый пост)
IvanovIV, используй метод System.IO.File.Move или System.IO.FileInfo.MoveTo 


Автор: IvanovIV 18.4.2010, 18:19
diadiavova, KuMa1104 спасибо! Чего-то только сейчас до меня дошло, что перемещать и копировать - это по сути очень разные операции. Еще раз спасибо!

Автор: Rohoss 19.4.2010, 15:46
Даже не знал, что System.IO.FileInfo.Name только для чтения. Неужели М$ было трудно реализовать и set  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)