代码该如何写??
解决方案 »
- 求大虾
- 求解决,如下
- MDAC和SDK是做什么的?
- 如何使用AD得到用户的其它信息(超急!!!!!!!!!!!!)
- 十分奇怪!数据库提出的类型问题
- 要怎么样才能删除曾经加载进PICTUREBOX里的图片啊????
- 如何使用 DEVPATH 来设置程序集的位置
- 怎样制作VC#.NET的SETUP程序?
- 谁有讲.Net方面的电子书(最好是中文),一直以来还不知这个.Net是怎么回事?
- 像WindowsXP中的那种气泡窗口是如何作出来的?
- 图片热区问题
- 我页面有6个textbox 如何循环相加这6个textbox的值...........................................................
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
string sourcepath = AppDomain.CurrentDomain.BaseDirectory+@"\sourcedir";
string targetpath = AppDomain.CurrentDomain.BaseDirectory+@"\targetdir";
string filename = string.Empty;
DirectoryInfo dir = new DirectoryInfo(sourcepath);
FileInfo[] files = dir.GetFiles();
foreach(FileInfo fi in files){
filename = fi.Name;
fi.CopyTo(targetpath+@"\"+filename,true);
}
}
}
}
{
DirectoryInfo source = new DirectoryInfo(sourcedir);
if (!Directory.Exists(destdir))
Directory.CreateDirectory(destdir); FileInfo[] files = source.GetFiles();
foreach (FileInfo file in files)
{
File.Copy(file.FullName, destdir + "\\" + file.Name);
}
DirectoryInfo[] dir = source.GetDirectories();
foreach (DirectoryInfo d in dir)
{
Directory.CreateDirectory(destdir + "\\" + d.Name);
CopyDir(d.FullName, destdir + "\\" + d.Name);
} }
CopyDir(@"D:\Project\Windows Mobile\Windows Mobile\PdaWebServer", @"d:\copy");自己改改吧。你也可以用Process.Start("copy.bat");执行bat文件来执行
@"c:\temp\a", @"c:\temp\a_bak");
/// <summary>
/// 复制目录
/// </summary>
/// <param name="srcPath">源路径</param>
/// <param name="destPath">目标路径</param>
private void CopyDirectory(string srcPath, string destPath)
{
if (!Directory.Exists(srcPath))
{
throw new Exception("未找到源路径!");
}
if (!Directory.Exists(destPath))
{
Directory.CreateDirectory(destPath);
}
srcPath = srcPath.Trim();
if (srcPath[srcPath.Length - 1].Equals(@"\"))
{
srcPath = srcPath.Remove(srcPath.Length - 1);
}
string shortPathName = srcPath.Substring(srcPath.LastIndexOf(@"\") + 1);
destPath = AppendDirSplit(destPath);
destPath += (shortPathName + @"\");
foreach (string fileName in Directory.GetFiles(srcPath))
{
int startIndex = fileName.LastIndexOf(@"\") + 1;
string destFileName = destPath + fileName.Substring(startIndex);
if (!Directory.Exists(destPath))
{
Directory.CreateDirectory(destPath);
}
File.Copy(fileName, destFileName, true);
}
foreach (string directoryName in Directory.GetDirectories(srcPath))
{
CopyDirectory(directoryName, destPath);
}
}
我想把@"C:\TEMP\downfile\ 里的文件全部放到@"C:\TEMP\ 后,删除@"C:\TEMP\downfile\里的文件麻烦了
递归?代码只是提供一个思路,并不是终极解决方案。using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
string sourcepath = @"c:\\Temp\\downfile";
string targetpath = @"c:\\Temp";
string filename = string.Empty;
DirectoryInfo dir = new DirectoryInfo(sourcepath);
FileInfo[] files = dir.GetFiles();
foreach(FileInfo fi in files){
filename = fi.Name;
fi.MoveTo(targetpath+@"\"+filename);
}
}
}最后建议楼主学习下C#的io类库。
new DirectoryInfo()
File.Copy
// 得到源目录的文件列表,该里面是包含文件以及目录路径的一个数组
string[] fileList = Directory.GetFiles(@"C:\TEMP\downfile\");
// 遍历所有的文件和目录
foreach (string file in fileList)
{
// 先当作目录处理如果存在这个目录就递归Copy该目录下面的文件
if (File.Exists(file))
{
char c = @"\".ToCharArray(0, 1)[0]; ;
string [] fileName=file.Split(c);
string destPath = Application.StartupPath+@"\" + fileName[fileName.Length - 1]; File.Copy(file,destPath, true);
}
}