DoboWiki
Top
> .NETプログラミング研究/95 をテンプレートにして作成
.NETプログラミング研究/95 をテンプレートにして作成
開始行:
#title(DotNetZip(Ionic Zip Library)を使ってZIP書庫のリ...
#navi(.NETプログラミング研究)
#contents
*DotNetZip(Ionic Zip Library)を使ってZIP書庫のリスト表...
**書庫内のエントリのリストを表示する [#eb072568]
[[前回>../94]]のZIP書庫を展開する方法で紹介したように、Zi...
ZipFileオブジェクトをFor Each(foreach)でまわしてZipEntry...
#code(vbnet){{
'エントリのリストを表示するZIP書庫のパス
Dim zipPath As String = "C:\test.zip"
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
zipPath, System.Text.Encoding.GetEncoding("shift_jis"))
'書庫にコメントが付いていれば表示する
If String.IsNullOrEmpty(zip.Comment) Then
Console.WriteLine("コメント:{0}", zip.Comment)
End If
'書庫内のエントリを列挙する
For Each entry As Ionic.Zip.ZipEntry In zip
If entry.IsDirectory Then
'ディレクトリのとき
Console.WriteLine("ディレクトリ名:{0}", entr...
Console.WriteLine()
Else
'ファイルのとき
Console.WriteLine("ファイル名:{0}", entry.Fi...
Console.WriteLine("更新日時:{0}", entry.Modi...
'圧縮前のサイズ
Console.WriteLine("サイズ:{0}バイト", entry....
'圧縮されたサイズ
Console.WriteLine("格納サイズ:{0}バイト", en...
Console.WriteLine("圧縮率:{0}%", entry.Compr...
Console.WriteLine("CRC32:{0:X}", entry.Crc)
Console.WriteLine("パスワード:{0}", entry.Us...
Console.WriteLine()
End If
Next
End Using
}}
#code(csharp){{
//エントリのリストを表示するZIP書庫のパス
string zipPath = @"C:\test.zip";
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
zipPath, System.Text.Encoding.GetEncoding("shift_jis"...
{
//書庫にコメントが付いていれば表示する
if (string.IsNullOrEmpty(zip.Comment))
{
Console.WriteLine("コメント:{0}", zip.Comment);
}
//書庫内のエントリを列挙する
foreach (Ionic.Zip.ZipEntry entry in zip)
{
if (entry.IsDirectory)
{
//ディレクトリのとき
Console.WriteLine("ディレクトリ名:{0}", entr...
Console.WriteLine();
}
else
{
//ファイルのとき
Console.WriteLine("ファイル名:{0}", entry.Fi...
Console.WriteLine("更新日時:{0}", entry.Modi...
//圧縮前のサイズ
Console.WriteLine("サイズ:{0}バイト", entry....
//圧縮されたサイズ
Console.WriteLine("格納サイズ:{0}バイト", en...
Console.WriteLine("圧縮率:{0}%", entry.Compr...
Console.WriteLine("CRC32:{0:X}", entry.Crc);
Console.WriteLine("パスワード:{0}", entry.Us...
Console.WriteLine();
}
}
}
}}
エントリの名前のリストだけであれば、ZipFile.EntryFileName...
#code(vbnet){{
'エントリのリストを表示するZIP書庫のパス
Dim zipPath As String = "C:\test.zip"
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
zipPath, System.Text.Encoding.GetEncoding("shift_jis"))
'エントリ名を表示する
For Each entryName As String In zip.EntryFileNames
Console.WriteLine(entryName)
Next
End Using
}}
#code(csharp){{
//エントリのリストを表示するZIP書庫のパス
string zipPath = @"C:\test.zip";
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
zipPath, System.Text.Encoding.GetEncoding("shift_jis"...
{
//エントリ名を表示する
foreach (string entryName in zip.EntryFileNames)
{
Console.WriteLine(entryName);
}
}
}}
***ある条件のエントリをリスト表示する [#c6237f91]
ZipFile.SelectEntriesメソッドを使用すると、エントリの名前...
エントリを選別する条件としてSelectEntriesメソッドに渡すse...
下の例ではSelectEntriesメソッドを使って.txt拡張子のエント...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
"C:\test.zip", System.Text.Encoding.GetEncoding("shif...
'.txt拡張子のエントリのコレクションを取得する
Dim entries As ICollection(Of Ionic.Zip.ZipEntry) = z...
'取得したエントリを列挙する
For Each entry As Ionic.Zip.ZipEntry In entries
Console.WriteLine(entry.FileName)
Next
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
@"C:\test.zip", System.Text.Encoding.GetEncoding("shi...
{
//.txt拡張子のエントリのコレクションを取得する
ICollection<Ionic.Zip.ZipEntry> entries = zip.SelectE...
//取得したエントリを列挙する
foreach (Ionic.Zip.ZipEntry entry in entries)
{
Console.WriteLine(entry.FileName);
}
}
}}
補足:既存のZIP書庫を開いたのではなく、新しくZipFileを作...
**書庫内のテキストファイルの中身を閲覧する [#ub9e4ded]
[[前回>../94]]ZipEntry.Extractメソッドを使って書庫内のフ...
下の例では、ZipEntry.OpenReaderメソッドでCrcCalculatorStr...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
"C:\test.zip", System.Text.Encoding.GetEncoding("shif...
'"readme.txt"という名前のエントリを探す
Dim entry As Ionic.Zip.ZipEntry = zip("readme.txt")
If entry IsNot Nothing Then
'CrcCalculatorStreamを取得する
Using ccs As Ionic.Zlib.CrcCalculatorStream = ent...
'Shift JISでエンコードして表示する
Using sr As New System.IO.StreamReader( _
ccs, System.Text.Encoding.GetEncoding("sh...
Console.WriteLine(sr.ReadToEnd())
End Using
End Using
End If
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
@"C:\test.zip", System.Text.Encoding.GetEncoding("shi...
{
//"readme.txt"という名前のエントリを探す
Ionic.Zip.ZipEntry entry = zip["readme.txt"];
if (entry != null)
{
//CrcCalculatorStreamを取得する
using (Ionic.Zlib.CrcCalculatorStream ccs = entry...
{
//Shift JISでエンコードして表示する
using (System.IO.StreamReader sr = new System...
ccs, System.Text.Encoding.GetEncoding("sh...
{
Console.WriteLine(sr.ReadToEnd());
}
}
}
}
}}
また、ZipEntry.ExtractメソッドでStreamに展開することもで...
下の例では、ZipEntry.ExtractメソッドでMemoryStreamにテキ...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
"C:\test.zip", System.Text.Encoding.GetEncoding("shif...
'"readme.txt"という名前のエントリを探す
Dim entry As Ionic.Zip.ZipEntry = zip("readme.txt")
If entry IsNot Nothing Then
Using ms As New System.IO.MemoryStream()
'MemoryStreamに展開する
entry.Extract(ms)
ms.Position = 0
'Shift JISでエンコードして、表示する
Using sr As New System.IO.StreamReader( _
ms, System.Text.Encoding.GetEncoding("shi...
Console.WriteLine(sr.ReadToEnd())
End Using
End Using
End If
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
@"C:\test.zip", System.Text.Encoding.GetEncoding("shi...
{
//"readme.txt"という名前のエントリを探す
Ionic.Zip.ZipEntry entry = zip["readme.txt"];
if (entry != null)
{
using (System.IO.MemoryStream ms = new System.IO....
{
//MemoryStreamに展開する
entry.Extract(ms);
ms.Position = 0;
//Shift JISでエンコードして、表示する
using (System.IO.StreamReader sr = new System...
ms, System.Text.Encoding.GetEncoding("shi...
{
Console.WriteLine(sr.ReadToEnd());
}
}
}
}
}}
**書庫が正しいかテストする [#wab411a9]
ZIP書庫が壊れていないか確かめるには、ZipFile.IsZipFileメ...
#code(vbnet){{
'ZIPファイルをチェックする
If Ionic.Zip.ZipFile.IsZipFile("C:\test.zip", True) Then
Console.WriteLine("ZIPファイルに問題は見つかりません...
End If
}}
#code(csharp){{
//ZIPファイルをチェックする
if (Ionic.Zip.ZipFile.IsZipFile(@"C:\test.zip", true))
{
Console.WriteLine("ZIPファイルに問題は見つかりません...
}
}}
ZipFile.IsZipFile以外にZipFile.CheckZipというメソッドもあ...
**既存の書庫にファイルを追加する [#b8030a8f]
既存の書庫にファイルを追加するには、ZipFile.Readメソッド...
AddFileメソッドでファイルを追加したときは、既存の書庫に同...
下の例では、UpdateFileメソッドを使って書庫にファイルを追...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read("...
'書庫にファイルを追加する。同名のエントリがあれば更新...
zip.UpdateFile("C:\readme.txt")
'保存する
zip.Save()
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(@"C...
{
//書庫にファイルを追加する。同名のエントリがあれば更...
zip.UpdateFile(@"C:\readme.txt");
//保存する
zip.Save();
}
}}
***既存の書庫の更新に日本語は使えない? [#g1ed23e2]
実は上のコードにはごまかしがありました。ZipFile.Readメソ...
つまり、日本語にエントリ名を一切使わず、Encodingを指定し...
この問題は、以下に紹介する例でも同様に存在します。
**書庫から指定したエントリを削除する [#p3cd6e45]
書庫から一つのエントリを削除するには、ZipFile.RemoveEntry...
複数のエントリを削除するには、RemoveSelectedEntriesメソッ...
以下の例では、これらのメソッドを使って書庫内のファイルを...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read("...
'readme.txtがあれば削除する
Dim entry As Ionic.Zip.ZipEntry = zip("readme.txt")
If entry IsNot Nothing Then
zip.RemoveEntry(entry)
End If
'または、次のようにもできる
Dim removeName As String = "readme2.txt"
If zip.EntryFileNames.Contains(removeName) Then
zip.RemoveEntry(removeName)
End If
'拡張子が.docのファイルを削除する
zip.RemoveSelectedEntries("*.doc")
'保存する
zip.Save()
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(@"C...
{
//readme.txtがあれば削除する
Ionic.Zip.ZipEntry entry = zip["readme.txt"];
if (entry != null)
{
zip.RemoveEntry(entry);
}
//または、次のようにもできる
string removeName = "readme2.txt";
if (zip.EntryFileNames.Contains(removeName))
{
zip.RemoveEntry(removeName);
}
//拡張子が.docのファイルを削除する
zip.RemoveSelectedEntries("*.doc");
//保存する
zip.Save();
}
}}
**コメント [#e472b818]
- パスワード付き書庫のテストはどうすればいいのですか? --...
#comment
//これより下は編集しないでください
#pageinfo([[:Category/.NET]] [[:Category/ASP.NET]],2009-1...
終了行:
#title(DotNetZip(Ionic Zip Library)を使ってZIP書庫のリ...
#navi(.NETプログラミング研究)
#contents
*DotNetZip(Ionic Zip Library)を使ってZIP書庫のリスト表...
**書庫内のエントリのリストを表示する [#eb072568]
[[前回>../94]]のZIP書庫を展開する方法で紹介したように、Zi...
ZipFileオブジェクトをFor Each(foreach)でまわしてZipEntry...
#code(vbnet){{
'エントリのリストを表示するZIP書庫のパス
Dim zipPath As String = "C:\test.zip"
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
zipPath, System.Text.Encoding.GetEncoding("shift_jis"))
'書庫にコメントが付いていれば表示する
If String.IsNullOrEmpty(zip.Comment) Then
Console.WriteLine("コメント:{0}", zip.Comment)
End If
'書庫内のエントリを列挙する
For Each entry As Ionic.Zip.ZipEntry In zip
If entry.IsDirectory Then
'ディレクトリのとき
Console.WriteLine("ディレクトリ名:{0}", entr...
Console.WriteLine()
Else
'ファイルのとき
Console.WriteLine("ファイル名:{0}", entry.Fi...
Console.WriteLine("更新日時:{0}", entry.Modi...
'圧縮前のサイズ
Console.WriteLine("サイズ:{0}バイト", entry....
'圧縮されたサイズ
Console.WriteLine("格納サイズ:{0}バイト", en...
Console.WriteLine("圧縮率:{0}%", entry.Compr...
Console.WriteLine("CRC32:{0:X}", entry.Crc)
Console.WriteLine("パスワード:{0}", entry.Us...
Console.WriteLine()
End If
Next
End Using
}}
#code(csharp){{
//エントリのリストを表示するZIP書庫のパス
string zipPath = @"C:\test.zip";
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
zipPath, System.Text.Encoding.GetEncoding("shift_jis"...
{
//書庫にコメントが付いていれば表示する
if (string.IsNullOrEmpty(zip.Comment))
{
Console.WriteLine("コメント:{0}", zip.Comment);
}
//書庫内のエントリを列挙する
foreach (Ionic.Zip.ZipEntry entry in zip)
{
if (entry.IsDirectory)
{
//ディレクトリのとき
Console.WriteLine("ディレクトリ名:{0}", entr...
Console.WriteLine();
}
else
{
//ファイルのとき
Console.WriteLine("ファイル名:{0}", entry.Fi...
Console.WriteLine("更新日時:{0}", entry.Modi...
//圧縮前のサイズ
Console.WriteLine("サイズ:{0}バイト", entry....
//圧縮されたサイズ
Console.WriteLine("格納サイズ:{0}バイト", en...
Console.WriteLine("圧縮率:{0}%", entry.Compr...
Console.WriteLine("CRC32:{0:X}", entry.Crc);
Console.WriteLine("パスワード:{0}", entry.Us...
Console.WriteLine();
}
}
}
}}
エントリの名前のリストだけであれば、ZipFile.EntryFileName...
#code(vbnet){{
'エントリのリストを表示するZIP書庫のパス
Dim zipPath As String = "C:\test.zip"
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
zipPath, System.Text.Encoding.GetEncoding("shift_jis"))
'エントリ名を表示する
For Each entryName As String In zip.EntryFileNames
Console.WriteLine(entryName)
Next
End Using
}}
#code(csharp){{
//エントリのリストを表示するZIP書庫のパス
string zipPath = @"C:\test.zip";
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
zipPath, System.Text.Encoding.GetEncoding("shift_jis"...
{
//エントリ名を表示する
foreach (string entryName in zip.EntryFileNames)
{
Console.WriteLine(entryName);
}
}
}}
***ある条件のエントリをリスト表示する [#c6237f91]
ZipFile.SelectEntriesメソッドを使用すると、エントリの名前...
エントリを選別する条件としてSelectEntriesメソッドに渡すse...
下の例ではSelectEntriesメソッドを使って.txt拡張子のエント...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
"C:\test.zip", System.Text.Encoding.GetEncoding("shif...
'.txt拡張子のエントリのコレクションを取得する
Dim entries As ICollection(Of Ionic.Zip.ZipEntry) = z...
'取得したエントリを列挙する
For Each entry As Ionic.Zip.ZipEntry In entries
Console.WriteLine(entry.FileName)
Next
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
@"C:\test.zip", System.Text.Encoding.GetEncoding("shi...
{
//.txt拡張子のエントリのコレクションを取得する
ICollection<Ionic.Zip.ZipEntry> entries = zip.SelectE...
//取得したエントリを列挙する
foreach (Ionic.Zip.ZipEntry entry in entries)
{
Console.WriteLine(entry.FileName);
}
}
}}
補足:既存のZIP書庫を開いたのではなく、新しくZipFileを作...
**書庫内のテキストファイルの中身を閲覧する [#ub9e4ded]
[[前回>../94]]ZipEntry.Extractメソッドを使って書庫内のフ...
下の例では、ZipEntry.OpenReaderメソッドでCrcCalculatorStr...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
"C:\test.zip", System.Text.Encoding.GetEncoding("shif...
'"readme.txt"という名前のエントリを探す
Dim entry As Ionic.Zip.ZipEntry = zip("readme.txt")
If entry IsNot Nothing Then
'CrcCalculatorStreamを取得する
Using ccs As Ionic.Zlib.CrcCalculatorStream = ent...
'Shift JISでエンコードして表示する
Using sr As New System.IO.StreamReader( _
ccs, System.Text.Encoding.GetEncoding("sh...
Console.WriteLine(sr.ReadToEnd())
End Using
End Using
End If
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
@"C:\test.zip", System.Text.Encoding.GetEncoding("shi...
{
//"readme.txt"という名前のエントリを探す
Ionic.Zip.ZipEntry entry = zip["readme.txt"];
if (entry != null)
{
//CrcCalculatorStreamを取得する
using (Ionic.Zlib.CrcCalculatorStream ccs = entry...
{
//Shift JISでエンコードして表示する
using (System.IO.StreamReader sr = new System...
ccs, System.Text.Encoding.GetEncoding("sh...
{
Console.WriteLine(sr.ReadToEnd());
}
}
}
}
}}
また、ZipEntry.ExtractメソッドでStreamに展開することもで...
下の例では、ZipEntry.ExtractメソッドでMemoryStreamにテキ...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read( _
"C:\test.zip", System.Text.Encoding.GetEncoding("shif...
'"readme.txt"という名前のエントリを探す
Dim entry As Ionic.Zip.ZipEntry = zip("readme.txt")
If entry IsNot Nothing Then
Using ms As New System.IO.MemoryStream()
'MemoryStreamに展開する
entry.Extract(ms)
ms.Position = 0
'Shift JISでエンコードして、表示する
Using sr As New System.IO.StreamReader( _
ms, System.Text.Encoding.GetEncoding("shi...
Console.WriteLine(sr.ReadToEnd())
End Using
End Using
End If
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(
@"C:\test.zip", System.Text.Encoding.GetEncoding("shi...
{
//"readme.txt"という名前のエントリを探す
Ionic.Zip.ZipEntry entry = zip["readme.txt"];
if (entry != null)
{
using (System.IO.MemoryStream ms = new System.IO....
{
//MemoryStreamに展開する
entry.Extract(ms);
ms.Position = 0;
//Shift JISでエンコードして、表示する
using (System.IO.StreamReader sr = new System...
ms, System.Text.Encoding.GetEncoding("shi...
{
Console.WriteLine(sr.ReadToEnd());
}
}
}
}
}}
**書庫が正しいかテストする [#wab411a9]
ZIP書庫が壊れていないか確かめるには、ZipFile.IsZipFileメ...
#code(vbnet){{
'ZIPファイルをチェックする
If Ionic.Zip.ZipFile.IsZipFile("C:\test.zip", True) Then
Console.WriteLine("ZIPファイルに問題は見つかりません...
End If
}}
#code(csharp){{
//ZIPファイルをチェックする
if (Ionic.Zip.ZipFile.IsZipFile(@"C:\test.zip", true))
{
Console.WriteLine("ZIPファイルに問題は見つかりません...
}
}}
ZipFile.IsZipFile以外にZipFile.CheckZipというメソッドもあ...
**既存の書庫にファイルを追加する [#b8030a8f]
既存の書庫にファイルを追加するには、ZipFile.Readメソッド...
AddFileメソッドでファイルを追加したときは、既存の書庫に同...
下の例では、UpdateFileメソッドを使って書庫にファイルを追...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read("...
'書庫にファイルを追加する。同名のエントリがあれば更新...
zip.UpdateFile("C:\readme.txt")
'保存する
zip.Save()
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(@"C...
{
//書庫にファイルを追加する。同名のエントリがあれば更...
zip.UpdateFile(@"C:\readme.txt");
//保存する
zip.Save();
}
}}
***既存の書庫の更新に日本語は使えない? [#g1ed23e2]
実は上のコードにはごまかしがありました。ZipFile.Readメソ...
つまり、日本語にエントリ名を一切使わず、Encodingを指定し...
この問題は、以下に紹介する例でも同様に存在します。
**書庫から指定したエントリを削除する [#p3cd6e45]
書庫から一つのエントリを削除するには、ZipFile.RemoveEntry...
複数のエントリを削除するには、RemoveSelectedEntriesメソッ...
以下の例では、これらのメソッドを使って書庫内のファイルを...
#code(vbnet){{
'ZipFileオブジェクトを作成する
Using zip As Ionic.Zip.ZipFile = Ionic.Zip.ZipFile.Read("...
'readme.txtがあれば削除する
Dim entry As Ionic.Zip.ZipEntry = zip("readme.txt")
If entry IsNot Nothing Then
zip.RemoveEntry(entry)
End If
'または、次のようにもできる
Dim removeName As String = "readme2.txt"
If zip.EntryFileNames.Contains(removeName) Then
zip.RemoveEntry(removeName)
End If
'拡張子が.docのファイルを削除する
zip.RemoveSelectedEntries("*.doc")
'保存する
zip.Save()
End Using
}}
#code(csharp){{
//ZipFileオブジェクトを作成する
using (Ionic.Zip.ZipFile zip = Ionic.Zip.ZipFile.Read(@"C...
{
//readme.txtがあれば削除する
Ionic.Zip.ZipEntry entry = zip["readme.txt"];
if (entry != null)
{
zip.RemoveEntry(entry);
}
//または、次のようにもできる
string removeName = "readme2.txt";
if (zip.EntryFileNames.Contains(removeName))
{
zip.RemoveEntry(removeName);
}
//拡張子が.docのファイルを削除する
zip.RemoveSelectedEntries("*.doc");
//保存する
zip.Save();
}
}}
**コメント [#e472b818]
- パスワード付き書庫のテストはどうすればいいのですか? --...
#comment
//これより下は編集しないでください
#pageinfo([[:Category/.NET]] [[:Category/ASP.NET]],2009-1...
ページ名:
▲
▼
[
トップ
] [
新規
|
子ページ作成
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]