【VB.Net】zipファイルを解凍せずに読み取ってみた

どうも!リョクちゃです。

今回は、VB.Netでzipファイルを操作する方法の一部を

例を交えて紹介していきます。

前回の記事はこちら、

MACアドレスとは、ネットワーク機器やネットワークアダプタに割り当てられた世界で唯一固有の値で、ネットワークに接続する機器には、すべて割り当てられています。今回はVB.NetでMACアドレスを取得する方法について例を交えて紹介しています。



zipとは

zipとは、ファイル形式の一つで、ファイルの拡張子に.zipと書かれたファイルが該当します。

意味としては、圧縮ファイルのひとつになります。

イメージで表すと、下図のような感じです。

図に書いてあるように、複数のファイルを1つのファイルに圧縮して、

作成されるファイルがzipファイルになります。

作成されたzipファイルには、複数のファイルが含まれています。

用途としては、メールでの複数のファイルを送信したいときに圧縮して渡したり、

データサイズを軽減させたい場合に使われます。

メールに添付されたzipファイルは、

解凍することでファイルの中身を取り出すことができます。

準備編:フォームの作成

準備編:テスト用zipファイルの作成

下図のような流れでテキストファイルを作成し、

圧縮を行いzipファイルを作成しています。

作成したzipファイルは、任意の場所に保存しておき、パス(場所)を覚えておきましょう。

ちなみに筆者の環境は、

  • VisualStudio2019
  • Windows 10 64bit
  • .Net Framework 4.6.1

です。

スポンサーリンク




アプリケーションの目的

今回はボタンを押して、テスト用に作成したzipファイルを解凍せずに

Zipファイルを解凍せずにファイルの中身を取得し、

フォーム上のテキストボックスに表示していきます。



プログラム編

Zipファイルを操作するためにライブラリをインストール

Zipファイルを操作していく前に、ライブラリをインストールしていく必要があります。

今回使用するライブラリは、

System.IO.Compression

になります。

まず、インストールするには、NuGetパッケージマネージャを開く必要があります。

下図を参考に開いてみましょう。

開くと、下図が表示されます。

※表示されている画面では、既にライブラリがインストールされています。

画面上の参照(インストール済みの左隣)をクリックし、

検索ボックスに”System.IO.Compression”と入力し検索をかけます。

選択したら、右にライブラリの詳細が表示されます。

そこに”インストール”ボタンがあるので、クリックしてインストールをします。

これでライブラリのインストールは完了です。

Zipファイルを開く

Zipファイルを開くには、

System.IO.Compression.ZipArchive

System.IO.Compression.ZipFile.OpenRead(“zipファイルのパス(場所)”)

の二つの関数・メソッドを使用します。

コードで書くと下のようになります。

あらかじめ、System.IO.CompressionをImportsを記述することでインポートしています。

インポートすることで、System.IO.Compressionを省略した形で記述することが可能です。

Zipファイルに含まれる読み込むファイルを指定

System.IO.Compression.ZipArchiveEntry

先に指定した開くZipファイル変数を使って、

zipFilePath.GetEntry(“zipファイル内に含まれるファイル名”)

これらを使ってファイルの指定を行います。

コードで書くと下のようになります。

zipファイルの中身を読み取って、表示

次に、zipファイル内に該当のファイルがあるかチェックをするコードと

zipファイルを読み込むコードを書いていきます。

ファイルを読み込んだらテキストボックスに表示していくコードも書いてしまいます。

ファイルを読み込むには、

System.IO.StreamReader

を使用します。

これについては、テキストファイルの記事でも紹介していますので、

そちらを参考にしていただけたらなと思います。

VB.Netで指定したテキストファイルを読み取って出力したり、 複数行にわたるテキストファイルを読み取ってコンボボックスに格納する、やり方を紹介しています。

コードで書くと下のようになります。

最後に、読み込んだ変数のオブジェクトを解放してやることでプログラムの完成です。

まとめ

今回はzipファイルの操作、中でもファイルを解凍せずに中身を、

読み取る方法を例を交えて紹介解説しました。

zipファイルの操作に悩んでる方にぜひ、覚えていただけたらなと思います。

ご覧いただきありがとうございました。

・こちらの書籍を参考にVB.Net勉強しています。

スポンサーリンク