本文整理汇总了C#中NPOI.POIFS.FileSystem.POIFSFileSystem.CreateDirectory方法的典型用法代码示例。如果您正苦于以下问题:C# POIFSFileSystem.CreateDirectory方法的具体用法?C# POIFSFileSystem.CreateDirectory怎么用?C# POIFSFileSystem.CreateDirectory使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NPOI.POIFS.FileSystem.POIFSFileSystem
的用法示例。
在下文中一共展示了POIFSFileSystem.CreateDirectory方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestCopyRecursively
public void TestCopyRecursively()
{
POIFSFileSystem fsD = new POIFSFileSystem();
POIFSFileSystem fs = new POIFSFileSystem();
DirectoryEntry dirA = fs.CreateDirectory("DirA");
DirectoryEntry dirB = fs.CreateDirectory("DirB");
DocumentEntry entryR = fs.CreateDocument(new ByteArrayInputStream(dataSmallA), "EntryRoot");
DocumentEntry entryA1 = dirA.CreateDocument("EntryA1", new ByteArrayInputStream(dataSmallA));
DocumentEntry entryA2 = dirA.CreateDocument("EntryA2", new ByteArrayInputStream(dataSmallB));
// Copy docs
Assert.AreEqual(0, fsD.Root.EntryCount);
EntryUtils.CopyNodeRecursively(entryR, fsD.Root);
Assert.AreEqual(1, fsD.Root.EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry("EntryRoot"));
EntryUtils.CopyNodeRecursively(entryA1, fsD.Root);
Assert.AreEqual(2, fsD.Root.EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry("EntryRoot"));
Assert.IsNotNull(fsD.Root.GetEntry("EntryA1"));
EntryUtils.CopyNodeRecursively(entryA2, fsD.Root);
Assert.AreEqual(3, fsD.Root.EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry("EntryRoot"));
Assert.IsNotNull(fsD.Root.GetEntry("EntryA1"));
Assert.IsNotNull(fsD.Root.GetEntry("EntryA2"));
// Copy directories
fsD = new POIFSFileSystem();
Assert.AreEqual(0, fsD.Root.EntryCount);
EntryUtils.CopyNodeRecursively(dirB, fsD.Root);
Assert.AreEqual(1, fsD.Root.EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry("DirB"));
Assert.AreEqual(0, ((DirectoryEntry)fsD.Root.GetEntry("DirB")).EntryCount);
EntryUtils.CopyNodeRecursively(dirA, fsD.Root);
Assert.AreEqual(2, fsD.Root.EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry("DirB"));
Assert.AreEqual(0, ((DirectoryEntry)fsD.Root.GetEntry("DirB")).EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry("DirA"));
Assert.AreEqual(2, ((DirectoryEntry)fsD.Root.GetEntry("DirA")).EntryCount);
// Copy the whole lot
fsD = new POIFSFileSystem();
Assert.AreEqual(0, fsD.Root.EntryCount);
EntryUtils.CopyNodes(fs, fsD, new List<String>());
Assert.AreEqual(3, fsD.Root.EntryCount);
Assert.IsNotNull(fsD.Root.GetEntry(dirA.Name));
Assert.IsNotNull(fsD.Root.GetEntry(dirB.Name));
Assert.IsNotNull(fsD.Root.GetEntry(entryR.Name));
Assert.AreEqual(0, ((DirectoryEntry)fsD.Root.GetEntry("DirB")).EntryCount);
Assert.AreEqual(2, ((DirectoryEntry)fsD.Root.GetEntry("DirA")).EntryCount);
}
示例2: setUp
protected void setUp()
{
fs = new POIFSFileSystem();
dirA = fs.CreateDirectory("DirA");
dirB = fs.CreateDirectory("DirB");
dirAA = dirA.CreateDirectory("DirAA");
eRoot = fs.Root.CreateDocument("Root", new ByteArrayInputStream(new byte[] { }));
eA = dirA.CreateDocument("NA", new ByteArrayInputStream(new byte[] { }));
eAA = dirAA.CreateDocument("NAA", new ByteArrayInputStream(new byte[] { }));
}
示例3: TestAreDocumentsIdentical
public void TestAreDocumentsIdentical()
{
POIFSFileSystem fs = new POIFSFileSystem();
DirectoryEntry dirA = fs.CreateDirectory("DirA");
DirectoryEntry dirB = fs.CreateDirectory("DirB");
DocumentEntry entryA1 = dirA.CreateDocument("Entry1", new ByteArrayInputStream(dataSmallA));
DocumentEntry entryA1b = dirA.CreateDocument("Entry1b", new ByteArrayInputStream(dataSmallA));
DocumentEntry entryA2 = dirA.CreateDocument("Entry2", new ByteArrayInputStream(dataSmallB));
DocumentEntry entryB1 = dirB.CreateDocument("Entry1", new ByteArrayInputStream(dataSmallA));
// Names must match
Assert.AreEqual(false, entryA1.Name.Equals(entryA1b.Name));
Assert.AreEqual(false, EntryUtils.AreDocumentsIdentical(entryA1, entryA1b));
// Contents must match
Assert.AreEqual(false, EntryUtils.AreDocumentsIdentical(entryA1, entryA2));
// Parents don't matter if contents + names are the same
Assert.AreEqual(false, entryA1.Parent.Equals(entryB1.Parent));
Assert.AreEqual(true, EntryUtils.AreDocumentsIdentical(entryA1, entryB1));
// Can work with NPOIFS + POIFS
//ByteArrayOutputStream tmpO = new ByteArrayOutputStream();
MemoryStream tmpO = new MemoryStream();
fs.WriteFileSystem(tmpO);
ByteArrayInputStream tmpI = new ByteArrayInputStream(tmpO.ToArray());
NPOIFSFileSystem nfs = new NPOIFSFileSystem(tmpI);
DirectoryEntry dN1 = (DirectoryEntry)nfs.Root.GetEntry("DirA");
DirectoryEntry dN2 = (DirectoryEntry)nfs.Root.GetEntry("DirB");
DocumentEntry eNA1 = (DocumentEntry)dN1.GetEntry(entryA1.Name);
DocumentEntry eNA2 = (DocumentEntry)dN1.GetEntry(entryA2.Name);
DocumentEntry eNB1 = (DocumentEntry)dN2.GetEntry(entryB1.Name);
Assert.AreEqual(false, EntryUtils.AreDocumentsIdentical(eNA1, eNA2));
Assert.AreEqual(true, EntryUtils.AreDocumentsIdentical(eNA1, eNB1));
Assert.AreEqual(false, EntryUtils.AreDocumentsIdentical(eNA1, entryA1b));
Assert.AreEqual(false, EntryUtils.AreDocumentsIdentical(eNA1, entryA2));
Assert.AreEqual(true, EntryUtils.AreDocumentsIdentical(eNA1, entryA1));
Assert.AreEqual(true, EntryUtils.AreDocumentsIdentical(eNA1, entryB1));
}
示例4: TestAreDirectoriesIdentical
public void TestAreDirectoriesIdentical()
{
POIFSFileSystem fs = new POIFSFileSystem();
DirectoryEntry dirA = fs.CreateDirectory("DirA");
DirectoryEntry dirB = fs.CreateDirectory("DirB");
// Names must match
Assert.AreEqual(false, EntryUtils.AreDirectoriesIdentical(dirA, dirB));
// Empty dirs are fine
DirectoryEntry dirA1 = dirA.CreateDirectory("TheDir");
DirectoryEntry dirB1 = dirB.CreateDirectory("TheDir");
Assert.AreEqual(0, dirA1.EntryCount);
Assert.AreEqual(0, dirB1.EntryCount);
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(dirA1, dirB1));
// Otherwise children must match
dirA1.CreateDocument("Entry1", new ByteArrayInputStream(dataSmallA));
Assert.AreEqual(false, EntryUtils.AreDirectoriesIdentical(dirA1, dirB1));
dirB1.CreateDocument("Entry1", new ByteArrayInputStream(dataSmallA));
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(dirA1, dirB1));
dirA1.CreateDirectory("DD");
Assert.AreEqual(false, EntryUtils.AreDirectoriesIdentical(dirA1, dirB1));
dirB1.CreateDirectory("DD");
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(dirA1, dirB1));
// Excludes support
List<String> excl = new List<string>(new String[] { "Ignore1", "IgnDir/Ign2" });
FilteringDirectoryNode fdA = new FilteringDirectoryNode(dirA1, excl);
FilteringDirectoryNode fdB = new FilteringDirectoryNode(dirB1, excl);
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
// Add an ignored doc, no notice is taken
fdA.CreateDocument("Ignore1", new ByteArrayInputStream(dataSmallA));
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
// Add a directory with filtered contents, not the same
DirectoryEntry dirAI = dirA1.CreateDirectory("IgnDir");
Assert.AreEqual(false, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
DirectoryEntry dirBI = dirB1.CreateDirectory("IgnDir");
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
// Add something to the filtered subdir that gets ignored
dirAI.CreateDocument("Ign2", new ByteArrayInputStream(dataSmallA));
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
// And something that doesn't
dirAI.CreateDocument("IgnZZ", new ByteArrayInputStream(dataSmallA));
Assert.AreEqual(false, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
dirBI.CreateDocument("IgnZZ", new ByteArrayInputStream(dataSmallA));
Assert.AreEqual(true, EntryUtils.AreDirectoriesIdentical(fdA, fdB));
}
示例5: TestRename
public void TestRename()
{
POIFSFileSystem fs = new POIFSFileSystem();
DirectoryEntry root = fs.Root;
// Verify cannot Rename the root directory
Assert.IsTrue(!root.RenameTo("foo"));
DirectoryEntry dir = fs.CreateDirectory("myDir");
Assert.IsTrue(dir.RenameTo("foo"));
Assert.AreEqual("foo", dir.Name);
DirectoryEntry dir2 = fs.CreateDirectory("myDir");
Assert.IsTrue(!dir2.RenameTo("foo"));
Assert.AreEqual("myDir", dir2.Name);
Assert.IsTrue(dir.RenameTo("FirstDir"));
Assert.IsTrue(dir2.RenameTo("foo"));
Assert.AreEqual("foo", dir2.Name);
}
示例6: TestDeletion
public void TestDeletion()
{
POIFSFileSystem fs = new POIFSFileSystem();
DirectoryEntry root = fs.Root;
Assert.IsFalse(root.Delete());
Assert.IsTrue(root.IsEmpty);
DirectoryEntry dir = fs.CreateDirectory("myDir");
Assert.IsFalse(root.IsEmpty);
Assert.IsTrue(dir.IsEmpty);
Assert.IsFalse(root.Delete());
// Verify can Delete empty directory
Assert.IsTrue(dir.Delete());
dir = fs.CreateDirectory("NextDir");
DocumentEntry doc = dir.CreateDocument("foo", new MemoryStream(new byte[1]));
Assert.IsFalse(root.IsEmpty);
Assert.IsFalse(dir.IsEmpty);
Assert.IsFalse(dir.Delete());
// Verify cannot Delete empty directory
Assert.IsTrue(!dir.Delete());
Assert.IsTrue(doc.Delete());
Assert.IsTrue(dir.IsEmpty);
// Verify now we can Delete it
Assert.IsTrue(dir.Delete());
Assert.IsTrue(root.IsEmpty);
}