修改文件名称。 to chNET(有神论者) :是个笨办法,我想快速更改几万个文件,可能这个方法行不通。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用File遍历用Diretory类得到的File集合,按自己的想法改名。大致思路如此 to oldhunter(老猎人) :我就想更改文件名称而已,而且就是不知道怎样更改文件名称。 用File遍历用Diretory类得到的File集合用这个方法改名 File.Move("c:\\temp\\abc.txt", "C:\\temp\\def.txt" ); fyy117() :我不移动文件,就想把文件名称改了。 windows里移动文件和改文件名用的是同一个函数, 路经相同的话就是改名, 不同就是移动 public void Rename(DirectoryInfo dir){ int i = 0; if(dir.Exists) { foreach(string fileName in dir.GetFiles()) { if(File.Exist(fileName)) { FileInfo fi = new FileInfo(fileName); fi.MoveTo(Path.Combine(dir.Name, i.ToString() + fi.Extension); i++; } } }} 再贴一次,win2000下调试通过Process proc = new Process();proc.StartInfo.FileName="ren.exe";proc.StartInfo.CreateNoWindow=true;proc.StartInfo.Arguments="*.doc *.txt";proc.Start(); 来晚了public void Rename(DirectoryInfo dir){ int i = 0; if(dir.Exists) { foreach(string fileName in dir.GetFiles()) { if(File.Exist(fileName)) { FileInfo fi = new FileInfo(fileName); fi.MoveTo(Path.Combine(dir.Name, i.ToString() + fi.Extension); i++; } } }} 更正一下。void Rename(DirectoryInfo dir){ int i = 0; if(dir.Exists) { foreach(FileInfo fi in dir.GetFiles()) { fi.MoveTo(Path.Combine(dir.FullName, i.ToString() + "." + fi.Extension)); i++; } foreach(DirectoryInfo di in dir.GetDirectories()) { Rename(di); } }}我测试过3G的数据11,500文件,2381个文件夹,花费25秒。 获取磁盘序列号,出现未将对象引用到设置的实例的问题? 散分喽,咯咯。 还是验证按钮 如何让treeview 在窗体启动时,就选中第三项呢? winform 可隐藏 可停靠 工具栏(像vs的工具栏和资源管理器) TreeNode 关于dataset更新数据库的问题 怎么样调整控件自适应窗体大小 我的报表天使 C#和visual c#.net是不是一回事 <<C#高级编程>><<C#完全手册>>那一本比较好? 如何实现?
用这个方法改名 File.Move("c:\\temp\\abc.txt", "C:\\temp\\def.txt" );
{
int i = 0; if(dir.Exists)
{
foreach(string fileName in dir.GetFiles())
{
if(File.Exist(fileName))
{
FileInfo fi = new FileInfo(fileName);
fi.MoveTo(Path.Combine(dir.Name, i.ToString() + fi.Extension);
i++;
}
}
}
}
proc.StartInfo.FileName="ren.exe";
proc.StartInfo.CreateNoWindow=true;
proc.StartInfo.Arguments="*.doc *.txt";
proc.Start();
{
int i = 0; if(dir.Exists)
{
foreach(string fileName in dir.GetFiles())
{
if(File.Exist(fileName))
{
FileInfo fi = new FileInfo(fileName);
fi.MoveTo(Path.Combine(dir.Name, i.ToString() + fi.Extension);
i++;
}
}
}
}
void Rename(DirectoryInfo dir)
{
int i = 0;
if(dir.Exists)
{
foreach(FileInfo fi in dir.GetFiles())
{
fi.MoveTo(Path.Combine(dir.FullName, i.ToString() + "." + fi.Extension));
i++;
}
foreach(DirectoryInfo di in dir.GetDirectories())
{
Rename(di);
}
}
}
我测试过3G的数据11,500文件,2381个文件夹,花费25秒。