Skip to content

Commit 1c1d53e

Browse files
Add file access overload to RootStorage.Open
1 parent 8124b1c commit 1c1d53e

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

OpenMcdf.Tests/RootStorageTests.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ public void Open(string fileName)
1212
using var rootStorage2 = RootStorage.OpenRead(fileName);
1313

1414
Assert.ThrowsException<IOException>(() => RootStorage.Open(fileName, FileMode.Open));
15+
Assert.ThrowsException<IOException>(() => RootStorage.Open(fileName, FileMode.Open, FileAccess.ReadWrite));
1516
Assert.ThrowsException<IOException>(() => RootStorage.OpenWrite(fileName));
1617
}
1718

OpenMcdf/RootStorage.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,14 @@ public static RootStorage Open(string fileName, FileMode mode, StorageModeFlags
7070
return Open(stream, flags);
7171
}
7272

73+
public static RootStorage Open(string fileName, FileMode mode, FileAccess access, StorageModeFlags flags = StorageModeFlags.None)
74+
{
75+
ThrowIfLeaveOpen(flags);
76+
77+
FileStream stream = File.Open(fileName, mode, access);
78+
return Open(stream, flags);
79+
}
80+
7381
public static RootStorage Open(Stream stream, StorageModeFlags flags = StorageModeFlags.None)
7482
{
7583
stream.ThrowIfNotSeekable();

0 commit comments

Comments
 (0)