PDA

View Full Version : مبتدی: تغییر نام فایل



mortezamsp
سه شنبه 11 خرداد 1389, 21:07 عصر
سلام .
میخوام فایل های درون یه پوشه نامشون رو تغییر بدم ، نمیدونم چرا کد کارنمیکنه . فکرکنم اشکال از عملیات رشته باشه .چون امتحان کردم ،فایل هارو میخونه ولی اسمشونو عوض نمیکنه . قراراه یه عبارت از نام فایل ها حذف بشه .ممنون.

foreach (FileInfo files in allfiles.GetFiles())
{
NewName = files.FullName;
delstr=textBox1.Text;
int i = NewName.IndexOf(delstr);
if (i >= 0)
{
NewName.Remove(i, delstr.Length);
NewName.Replace(delstr,"");
File.Move(files.FullName, NewName);
}
}

Open-Source
سه شنبه 11 خرداد 1389, 21:27 عصر
این یه نمونه کد، برای تغییر نام فایل:
DirectoryInfo d = new DirectoryInfo("c:/dir/");
FileInfo[] infos = d.GetFiles("*.myfiles");
foreach(FileInfo f in infos)
{
// Do the renaming here
File.Move(f.FullName, Path.Combine(f.Directory.ToString(), "1" + f.Name));
}

mortezamsp
سه شنبه 11 خرداد 1389, 21:39 عصر
نه .مشکل حل نشد !
این exe و کد :

Open-Source
سه شنبه 11 خرداد 1389, 22:57 عصر
سلام .
میخوام فایل های درون یه پوشه نامشون رو تغییر بدم ، نمیدونم چرا کد کارنمیکنه . فکرکنم اشکال از عملیات رشته باشه .چون امتحان کردم ،فایل هارو میخونه ولی اسمشونو عوض نمیکنه . قراراه یه عبارت از نام فایل ها حذف بشه .ممنون.

foreach (FileInfo files in allfiles.GetFiles())
{
NewName = files.FullName;
delstr=textBox1.Text;
int i = NewName.IndexOf(delstr);
if (i >= 0)
{
NewName.Remove(i, delstr.Length);
NewName.Replace(delstr,"");
File.Move(files.FullName, NewName);
}
}

مشکل عوض نکردن نام اون قسمت قرمز رنگ هستش.
باید اینطوری بنویسی:
NewName = NewName.Remove(i, delstr.Length);