
EPPlus - Excelファイルを開く
EPPlus - Excelファイルを開く
EPPlus でブックを開く方法を紹介する。
サンプルの動作確認には、以下の環境を利用した。
- .NET Framework 4.8
- EPPlus 4.5.3.3
(商用利用できる最後のバージョン)
ブックを開く(FileInfo 指定)
ExcelPackage のコンストラクタに FileInfo を指定して開く。
var fi = new FileInfo(@"C:\tmp\EPPlus\Book1.xlsx");
using (var package = new ExcelPackage(fi))
{
// TODO: 処理を書く
}
ブックを開く(Stream 指定)
Stream を使う場合、次のいずれかの方法で開くことができる。
- ExcelPackage のコンストラクタを使う
- ExcelPackage.Load メソッドを使う
ExcelPackage のコンストラクタに Stream を指定して開く
using (var stream = new FileStream(@"C:\tmp\EPPlus\Book1.xlsx",
FileMode.Open))
{
using (var package = new ExcelPackage(stream))
{
// TODO: 処理を書く
}
}
ExcelPackage.Load メソッドに Stream を指定して開く
using (var package = new ExcelPackage())
{
using (var stream = new FileStream(@"C:\tmp\EPPlus\Book1.xlsx",
FileMode.Open))
{
package.Load(stream);
}
// TODO: 処理を書く
}
パスワード付きブックを開く
読み取りパスワードが設定されたブックを開く場合、開くときにパスワードを一緒に指定すればよい。
ExcelPackage のコンストラクタの第2引数にパスワードを指定する。
var fi = new FileInfo(@"C:\tmp\EPPlus\Book2.xlsx");
using (var package = new ExcelPackage(fi, "12345678"))
{
Stream を指定する場合も同様で、ExcelPackage のコンストラクタの第2引数にパスワードを指定する。
using (var stream = new FileStream(@"C:\tmp\EPPlus\Book2.xlsx",
FileMode.Open))
{
using (var package = new ExcelPackage(stream, "12345678"))
{
ExcelPackage.Load メソッドを使う場合、メソッドの第2引数にパスワードを指定する。
package.Load(stream, "12345678");
パスワードに誤りがある場合は、System.Security.SecurityException: 'Invalid password' が発生する。
まとめ
Excel ブックを読み取り専用で開きたいときは Stream 指定で開くようにする。
そうでないときは FileInfo 指定で開けばよいだろう。
ブックを開けたので、次は保存する方法をまとめたい。
アカウントを作成 して、もっと沢山の記事を読みませんか?
この記事が気に入ったら ことりと さんを応援しませんか?
メッセージを添えてチップを送ることができます。
この記事にコメントをしてみませんか?