资源简介
自动备份资源目录下的所有文件文件夹。公司要求每天从文件服务器备份所有文件,按日期分文件夹。于是自己写了这个程序。从本机做网络映射到目标文件夹。然后启动程序设置好,就可以每几天备份存放。刚学写的不好,适合新手。里边用到了拷贝文件夹,线程,进度条知识点。
![](http://www.nz998.com/pic/43424.jpg)
代码片段和文件信息
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;
using System.Threading;
namespace AutoBackupFile
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public int probarValue;
public DateTime lastTime;
public DateTime nextTime;
public string sourcePath targetPath;
public long sourceSizetargetSize;
public int Status=0;
//拷贝文件方法
public void CopyDir(string srcPathstring aimPath)
{
try
{
//判断目录是否以目录分隔符结束
if (aimPath[aimPath.Length - 1] != Path.DirectorySeparatorChar)
aimPath += Path.DirectorySeparatorChar;
//判断有无目录没有就创建
if (!Directory.Exists(aimPath))
Directory.CreateDirectory(aimPath);
string[] fileList = Directory.GetFileSystemEntries(srcPath);
foreach (string files in fileList)
{
if (Directory.Exists(files))
{
CopyDir(files aimPath + Path.GetFileName(files));
}
else
{
File.Copy(files aimPath + Path.GetFileName(files) true);
}
}
}
catch (Exception ee)
{
throw new Exception(ee.ToString());
}
}
//文件夹大小方法
private static long GetDirectorySize(string sizePath)
{
if (!Directory.Exists(sizePath))
{
return 0;
}
else
{
long len = 0;
DirectoryInfo dir = new DirectoryInfo(sizePath);
foreach (FileInfo fi in dir.GetFiles())
{
len += fi.Length;
}
DirectoryInfo[] dirList = dir.GetDirectories();
if (dirList.Length > 0)
{
for (int i=0;i {
len += GetDirectorySize(dirList[i].FullName);
}
}
return len;
}
}
//程序加载
private void Form1_Load(object sender EventArgs e)
{
dtpTime.Format = DateTimePickerFormat.Custom;
dtpTime.CustomFormat = “HH:mm:ss“;
timerSystem.Start();
}
//源目录浏览按钮
private void btnSource_Click(object sender EventArgs e)
{
DialogResult re= fBDPath.ShowDialog();
if (re == DialogResult.OK)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3289 2009-06-22 10:48 AutoBackupFile\AutoBackupFile.csproj
文件 473 2009-06-16 09:18 AutoBackupFile\Program.cs
文件 2883 2009-06-16 09:18 AutoBackupFile\Properties\Resources.Designer.cs
文件 5612 2009-06-16 09:18 AutoBackupFile\Properties\Resources.resx
文件 1098 2009-06-16 09:18 AutoBackupFile\Properties\Settings.Designer.cs
文件 249 2009-06-16 09:18 AutoBackupFile\Properties\Settings.settings
文件 1226 2009-07-03 16:19 AutoBackupFile\Properties\AssemblyInfo.cs
文件 317 2009-07-03 16:25 AutoBackupFile\obj\AutoBackupFile.csproj.FileList.txt
文件 28672 2009-07-03 16:24 AutoBackupFile\obj\Debug\AutoBackupFile.exe
文件 180 2009-07-03 16:24 AutoBackupFile\obj\Debug\AutoBackupFile.Form1.resources
文件 180 2009-06-16 10:50 AutoBackupFile\obj\Debug\AutoBackupFile.Properties.Resources.resources
文件 30208 2009-07-03 16:24 AutoBackupFile\obj\Debug\AutoBackupFile.pdb
文件 842 2009-07-03 16:24 AutoBackupFile\obj\Debug\AutoBackupFile.csproj.GenerateResource.Cache
文件 28672 2009-07-03 16:24 AutoBackupFile\bin\Debug\AutoBackupFile.exe
文件 30208 2009-07-03 16:24 AutoBackupFile\bin\Debug\AutoBackupFile.pdb
文件 5632 2005-12-08 14:51 AutoBackupFile\bin\Debug\AutoBackupFile.vshost.exe
文件 6925 2009-07-03 16:24 AutoBackupFile\Form1.cs
文件 14957 2009-07-03 16:24 AutoBackupFile\Form1.Designer.cs
文件 6809 2009-07-03 16:24 AutoBackupFile\Form1.resx
文件 931 2009-06-16 09:18 AutoBackupFile.sln
目录 0 2009-07-01 16:45 AutoBackupFile\obj\Debug\TempPE
目录 0 2009-07-01 16:45 AutoBackupFile\obj\Debug\Refactor
目录 0 2009-07-01 16:45 AutoBackupFile\obj\Debug
目录 0 2009-07-01 16:45 AutoBackupFile\bin\Debug
目录 0 2009-07-01 16:45 AutoBackupFile\Properties
目录 0 2009-07-01 16:45 AutoBackupFile\obj
目录 0 2009-07-01 16:45 AutoBackupFile\bin
目录 0 2009-07-01 16:45 AutoBackupFile
----------- --------- ---------- ----- ----
169363 28
............此处省略1个文件信息
- 上一篇:精美时钟()
- 下一篇:《ArcGIS Engine+C#开发教程》
评论
共有 条评论