文件之间的同步

上传人:ji****n 文档编号:45654956 上传时间:2018-06-18 格式:DOC 页数:3 大小:15.14KB
返回 下载 相关 举报
文件之间的同步_第1页
第1页 / 共3页
文件之间的同步_第2页
第2页 / 共3页
文件之间的同步_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《文件之间的同步》由会员分享,可在线阅读,更多相关《文件之间的同步(3页珍藏版)》请在金锄头文库上搜索。

1、这个小程序实现定时任务把 A 文件夹中的文件与 B 文件夹中的同步,有兴趣的朋友来看下 吧。 程序简介: /目的是后台定时运行文件同步操作 使 A 文件夹中的文件与 B 文件夹中的同步 /先将 A 文件夹中存在而 B 文件夹中没有的 A 文件夹中的文件删除 /再直接将 B 文件夹下的文件全部复制到 A 文件夹下 /或者将 B 文件夹中存在 A 文件夹中没有或比 A 文件夹中的更新的 B 文件夹中的文件复制 到 A 文件夹下 using System; using System.Collections.Generic; using System.ComponentModel; using Sys

2、tem.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; namespace ImageManager public partial class BackgroundWorkerForm : Formpublic BackgroundWorkerForm()InitializeComponent();/timer1.Interval = 10000;timer1.Enabled = true;CheckForIllegalCrossThreadCalls = f

3、alse;private void button1_Click(object sender, EventArgs e)int iFileCount = 0;System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(“F:TempA“);iFileCount = di.GetFiles().Length;MessageBox.Show(“A 文件夹下 文件的个数“ + iFileCount.ToString();bool IsComplete = true;/目的是后台定时运行文件同步操作 使 A 文件夹中的文件与 B 文件夹中的同步/先将

4、 A 文件夹中存在而 B 文件夹中没有的 A 文件夹中的文件删除/再直接将 B 文件夹下的文件全部复制到 A 文件夹下/或者将 B 文件夹中存在 A 文件夹中没有或比 A 文件夹中的更新的 B 文件夹中的 文件复制到 A 文件夹下 private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)IsComplete = false;/本次操作未完成System.IO.DirectoryInfo diA = new System.IO.DirectoryInfo(“F:TempA“); System.IO.FileIn

5、fo fiA = diA.GetFiles(); /先将 A 文件夹中存在而 B 文件夹中没有的 A 文件夹中的文件删除foreach (FileInfo tmpfiA in fiA)if (!File.Exists(“F:TempB“ + tmpfiA.Name)tmpfiA.Delete();this.label2.Text += “n A Delete “+tmpfiA.Name;/再直接将 B 文件夹下的文件全部复制到 A 文件夹下System.IO.DirectoryInfo diB = new System.IO.DirectoryInfo(“F:TempB“);System.IO

6、.FileInfo fiB = diB.GetFiles();/foreach (FileInfo tmpfiB in fiB)/ tmpfiB.CopyTo(“F:TempA“ + tmpfiB.Name, true);/或者将 B 文件夹中存在 A 文件夹中没有或比 A 文件夹中的更新的 B 文件夹 中的文件复制到 A 文件夹下 foreach (FileInfo tmpfiB in fiB)if (File.Exists(“F:TempA“ + tmpfiB.Name)FileInfo tmp = new System.IO.FileInfo(“F:TempA“ + tmpfiB.Nam

7、e);if (tmpfiB.LastWriteTime.CompareTo(tmp.LastWriteTime) != 0)tmpfiB.CopyTo(“F:TempA“ + tmpfiB.Name, true);this.label2.Text += “n A Update “ + tmpfiB.Name;elsetmpfiB.CopyTo(“F:TempA“ + tmpfiB.Name, true);this.label2.Text += “n A Copy “ + tmpfiB.Name;IsComplete = true;/本次操作已完成 可进行下次操作private void timer1_Tick(object sender, EventArgs e)if (IsComplete)this.backgroundWorker1.RunWorkerAsync();this.label1.Text = DateTime.Now.ToString();

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 初中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号