0
private void btn_Backup_Click(object sender, EventArgs e)
{
List<DirectoryInfo> SourceDir = this.lbox_Sources.Items.Cast<DirectoryInfo>().ToList();
List<DirectoryInfo> TargetDir = this.lbox_Targets.Items.Cast<DirectoryInfo>().ToList();
foreach (DirectoryInfo sourcedir in SourceDir)
{
foreach (DirectoryInfo targetdir in TargetDir)
{
string dateString = DateTime.Now.ToString("MM-dd-yyyy_H.mm.ss");
string LogFileName = @"BackupLog_" + sourcedir.Name + @"_" + dateString + @".log";
string[] lines = { dateString + "\t" + sourcedir.FullName + "\t" + targetdir.FullName + "\t" + "COMPLETED" };
if (this.checkbox_zipfiles.Checked == true)
{
System.IO.Compression.ZipFile.CreateFromDirectory(sourcedir.FullName, targetdir.FullName + @"\BACKUP_" + sourcedir.Name + @"_" + dateString + @".zip");
System.IO.File.WriteAllLines(tbox_LogFiles.Text + @"\" + LogFileName, lines);
}
else
{
foreach (var file in sourcedir.GetFiles())
{
Microsoft.VisualBasic.FileIO.FileSystem.CopyDirectory(sourcedir.FullName, targetdir.FullName, true);
System.IO.File.WriteAllLines(tbox_LogFiles.Text + @"\" + LogFileName, lines);
}
}
}
}
}
我需要從備份(比如後綴名爲.txt的.docx) 我用我的窗體上的列表中添加這些例外排除某些文件。 我還需要排除某些文件和文件夾,但我想我可以做到這一點,如果我知道如何做到這一點。排除文本文件等從備份應用程序C#
private void btn_AddFileTypeException_Click(object sender, EventArgs e)
{
Form_FileTypeExceptions frm = new Form_FileTypeExceptions(new FileException());
if (frm.ShowDialog() == DialogResult.OK)
{
this.lbox_FileTypeExceptions.Items.Add(frm.Exception);
}
}
有什麼想法嗎?
什麼是你FileException類的結構:在此之前,
如果你(只是爲了測試)中獲取文件的權數,通過觀察有兩個列表中提到循環,測試? (順便說一句,一個錯誤的名字 - 我猜 - 文件擴展名) – Nino
用你選擇的複製技術,你沒有單獨查看每個文件。我認爲你需要這樣做。 –
當你調用sourcedir.GetFiles()...你可以傳入你想要的文件擴展名作爲參數。 – Wheels73