2

問題が発生しました。次のコードを取得しました。

DirectoryInfo di = new DirectoryInfo(dir);
FileInfo[] rgFiles = di.GetFiles();
DirectoryInfo[] d = di.GetDirectories();
if(rgFiles != null && d != null) {
foreach (FileInfo fi in rgFiles)
{
    foreach (DirectoryInfo dii in d)
    {
        using (ZipFile zip = ZipFile.Read(locateZipFile()))
        {

            zip.AddFile(fi.FullName, "");

            zip.AddDirectory(dii.FullName,dii.Name);
            toolStripStatusLabel1.Text = "Inserting " + fi.Name;
            toolStripStatusLabel1.Text = "Inserting " + dii.Name + " and all of it's contents";

            MessageBox.Show("Inserted the file " + fi.Name);
            MessageBox.Show("Inserted the folder " + dii.Name + " and all contents in it.");
            zip.Save();

        }
    }
}

すべてがうまく機能しますが、zipに同じ名前のファイルを追加しようとすると、上書きされません..どのようにそれを行うことができるかについてのアイデアはありますか? ありがとう。

4

2 に答える 2

2

行の前に

zip.AddFile(fi.FullName, "");

名前がエントリにすでに存在するかどうかをテストする必要があります。ある場合は、取り外してから再度挿入してください。

于 2013-02-12T15:03:44.217 に答える