問題タブ [dotnetzip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
432 参照

c# - JAR ファイルを DotNetZip で更新すると、アーカイブが破損しますか?

既存の JAR ファイルを更新 (ファイルの追加/変更) しようとしていますが、このコード (DotNetZip ライブラリを使用) によりアーカイブが「破損」し、WinRAR で ZIP または JAR として開くことができません。

ZIP 形式と JAR 形式の違いを正確に教えてもらえますか? ファイルの最初のエントリとしてマニフェストを含む単純な ZIP 形式であるという印象を受けましたが、明らかにそうではありません。これを行うために使用できる既存の (C#) ライブラリはありますか?

0 投票する
1 に答える
4296 参照

c# - DotNetZip 破損したアーカイブを作成します (不正な CRC)

DotNetZip には、解決策が見つからないように見える奇妙な問題があります。数時間検索しましたが、何も見つかりませんでした。

かなり重要な変更時刻を追加する必要がありますが、現在はダミーのタイムスタンプしかありません。

WinRAR でファイルを開くと、「予期しないアーカイブの終了」と表示されます。個々のファイルのチェックサムは 00000000 で、WinRAR は「アーカイブの形式が不明であるか破損しています」と表示します。修理できます。これにより、サイズが 20% 小さくなり、すべてが正常になります。しかし、それは本当に役に立ちません..

zip.Entriesすべてのエントリを追加した後にブレークポイントを作成すると、すべてのエントリに同じ不正な CRC があることがわかりますが、すべてのデータはそこにあるように見えます。したがって、アーカイブを保存する方法が問題であってはなりません。

ファイル コレクションを別の場所で問題なく使用しているため、DotNetZip が奇妙になっています。それか、私が何かを誤解しています:)

0 投票する
1 に答える
1220 参照

asp.net - DotNetZip FileIOPermission - 権限はありますが、ファイルを zip に追加できません

dotnetzip で .zip ファイルにファイルを追加するのに完全に失敗しました

できます:

これは正しく完了し、ダウンロード用の zip ファイルが生成されます。このファイルは、内部のテキスト ファイルで開くことができます。

問題: 次のようなファイルを追加しようとしています:

常に次のような結果になります。

注:私のコードは問題なくファイルを読み書きできます。IIS ユーザー (および実際には全員) は、問題のファイルに対する完全なアクセス許可を持っています。IIS 7.5、win2008r2

DotNetZip アセンブリに同じ権限を付与するにはどうすればよいですか?

0 投票する
2 に答える
2095 参照

c# - c# と Ionic.dll を使用して 2 つの zip ファイルを 1 つにマージしようとしています

ここにコードがあります

問題は、エラーが発生せず、zipnew から zipold にマージされたファイルがないことです。Zipold は空の zip ファイルです

0 投票する
1 に答える
815 参照

c# - いいえ Ionic.Zlib.DeflateStream.BaseStream

私は C# コードで Ionic.Zlib.DeflateStream (別名 DotNetZip だと思います) を使用していますが、System.IO.Compression.DeflateStream のような BaseStream プロパティがないことに気付きました。これにアクセスする簡単な方法はありますか?部分的なクラスまたは拡張機能 (これらの概念にあまり慣れていない)、または私が見落としているもの、またはこのライブラリの更新されたバージョンでしょうか?

更新: Ionic.Zlib.DeflateStream がパラメーターとして指定された大規模なプロジェクトの奥深くに機能があります。基になるストリームが MemoryStream であることはわかっています。コードを変更して、基になるストリームの位置 0 をシークし、数バイトを書き込んでから、前の位置に戻りたいと考えています。これは、多くのコードを書き直すこととは対照的に、「クラッジ」またはダーティハックと呼ばれるものです...しかし、これは、より多くの再テストを必要とする他の何かとは対照的に、現時点で私たちが探しているソリューションです. 更新する必要がある MemoryStream のこの部分の数バイトは圧縮されていないため、この問題で DeflateStream の外でそれらを変更しても問題ありません。

0 投票する
2 に答える
212 参照

c# - C# で Zip ファイル内にファイルを作成する

Zipファイル内にファイルを作成することはできますか?

abc.zipファイルがあり、その中に という名前のファイルを作成したいとしましょうSomeFile.txt。出来ますか?[Zip ファイルの操作に役立つ dll Ionic.Zip を使用しています]。また、解凍せずにこれを行いたいです。

0 投票する
2 に答える
807 参照

c# - サーバー上にファイルを作成せずにダウンロードするためのリンクを提供する

ファイルを作成し、サーバーに配置せずにダウンロードできるようにしたいと考えています。

どうやってするの

DotNetZip を使用しています

0 投票する
2 に答える
8376 参照

c# - パスが長すぎる/重複しているZipFileの解凍を処理する方法

Windowsでファイルを解凍すると、パスに問題が発生することがあります

  1. これはWindowsには長すぎます(ただし、ファイルを作成した元のOSでは問題ありません)。
  2. 大文字と小文字を区別しないために「重複」している

DotNetZipを使用ZipFile.Read(path)すると、これらの問題の1つでzipファイルを読み取るたびに呼び出しが失敗します。つまり、フィルターで除外することすらできないということです。

これらの種類のファイルの読み取りを処理するための最良の方法は何ですか?

更新しました:

ここからのzipの例: https ://github.com/MonoReports/MonoReports/zipball/master

複製: https ://github.com/MonoReports/MonoReports/tree/master/src/MonoReports.Model/DataSourceType.cs https://github.com/MonoReports/MonoReports/tree/master/src/MonoReports.Model/DatasourceType .cs

例外の詳細は次のとおりです。

Ionic.Zip.ZipException:それをZipFileとして読み取ることができません
---> System.ArgumentException:同じキーを持つ>アイテムがすでに追加されています。
System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary 2.Add(TKey key、TValue value) at Ionic.Zip.ZipFile.ReadCentralDirectory(ZipFile zf) at Ionic.Zip.ZipFile.ReadIntoInstance(ZipFile zf) 2.Insert(TKey key, TValue value, Boolean add)
at System.Collections.Generic.Dictionary


解像度:

@Cheesoの提案に基づいて、ストリームからすべてを読み取ることができ、重複を回避するもの、およびパスの問題を読み取ることができます。

0 投票する
2 に答える
1186 参照

c# - zipファイルを同じディレクトリに保存します

質問があります。C#を初めて使用し、初めてパスを操作します:(

DotNetZipライブラリを使用してフォルダを圧縮しています...保存しようとすると、programfiles / iisに保存しようとし、その場所に保存する権限がないというエラーが表示されます。保存するにはどうすればよいですか。同じディレクトリにそれを、誰かが助けることができます:(

私は次のようなことをしています

私の質問は非常に単純でわかりやすいことは知っていますが、それをどのように扱うかわかりません。誰かが私を助けてくれませんか?私は何かが足りないのですか?

PS:私の質問が明確でない場合は、もう一度説明できることを知らせてください

ありがとう!

0 投票する
2 に答える
185 参照

c# - ダウンロードボタンが表示されない

私は奇妙な問題を抱えています..

Webページのサムネイルの作成に取り組んでいます!スレッドを使用したことがなく、問題があります

次のコードを使用しています

今私の問題は、サムネイルが作成されたときにダウンロードボタンが表示されることです..しかし、何らかの理由でダウンロードボタンが生成されないか、表示されません!

getscreenshot_click に配置しようとしましたが、スレッドが実行を開始する前、およびサムネイルが作成される前でも作成されます。

誰かがこの問題を解決するのを手伝ってくれますか?