问题描述
- 同一个文件夹里有多个图片要复制到另一个文件夹,要怎么做
-
首先我要能让系统得到每一张图片的名字,这样就可以用file.copy(源图片,目标图片,ture)将图片拷贝到另一个文件夹了,但问题是这样操作一张图片很简单,但是文件夹里有很多图片,我怎么得到每一张图片的名字并能分离开每一个图片名称?不知道描述的意思大神能懂吗 望助
解决方案
直接传入两个目录名,就可以。
public void CopyDirectory( string sourceDirName, string destDirName)
{
try
{
if (!Directory.Exists(destDirName))
{
Directory.CreateDirectory(destDirName);
File.SetAttributes(destDirName, File.GetAttributes(sourceDirName));
}
if (destDirName[destDirName.Length - 1] != Path.DirectorySeparatorChar)
destDirName = destDirName + Path.DirectorySeparatorChar;
string[] files = Directory.GetFiles(sourceDirName);
foreach (string file in files)
{
if(File.Exists(destDirName + Path.GetFileName(file)))
continue;
File.Copy(file, destDirName + Path.GetFileName(file),true);
File.SetAttributes(destDirName + Path.GetFileName(file), FileAttributes.Normal);
total++;
}
string[] dirs = Directory.GetDirectories(sourceDirName);
foreach (string dir in dirs)
{
CopyDirectory(dir, destDirName + Path.GetFileName(dir));
}
}
catch (Exception ex)
{
StreamWriter sw = new StreamWriter(Application.StartupPath+"\log.txt",true);
sw.Write(ex.Message+" "+DateTime.Now+"rn");
sw.Close();
}
解决方案二:
Directory.GetFiles()
获取名称和后缀通过Path.GetFileName的方法
解决方案三:
String path = "C://1";
List list = path.getFiles();
for(int i= 0,i<list.size();i++){
File file = list.get(i);
}
时间: 2024-11-02 23:14:07