ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript を使用して Web ブラウザでファイルを非同期に解凍するにはどうすればよいですか?
OpenOffice ファイル (.odt および .odp) を表示するには) を Web ブラウザで使用するには、最初にそれらを解凍する必要があります。 inflate.js はこのタスクには十分ではないかもしれませんが、ZIP ファイルを非同期的に解凍するための堅牢な JavaScript ソリューションが存在します。
JavaScript Unzipper が開発され、Andy G.P. の要素を組み込んでいます。 Na のバイナリ ファイル リーダーと Notmasteryet の RFC1951 インフレート ロジック。 ZipFile クラスは、コア機能を処理します。
次の JavaScript コードは、解凍ツールの使用法を示しています。
// Instantiate a ZipFile and provide a callback for when the ZIP is read. zipFile = new ZipFile(url, doneReading); // The doneReading callback is triggered when the ZIP is read and handles the extraction of entries. function doneReading(zip) { extractEntries(zip); } // Extract entries from the ZIP file. function extractEntries(zip) { for (var i = 0; i < zip.entries.length; i++) { var entry = zip.entries[i]; // Create an entry info div. var entryInfo = "<h4><a>" + entry.name + "</a></h4>\n<div>"; // Create a unique ID for the accordion panel and inject the extracted content into it. var randomId = "id-" + Math.floor((Math.random() * 1000000000)); entryInfo += "<span class='inputDiv'><h4>Content:</h4><span id='" + randomId + "'></span></span></div>\n"; $("#report").append(entryInfo); // Asynchronously extract the entry and pass a callback. entry.extract(extractCb(randomId)); } } // Extract callback function to add the extracted content to an accordion on the page. function extractCb(id) { return (function(entryName, entryText){ var content = entryText.replace(new RegExp( "\n", "g" ), "<br/>"); $("#"+id).html(content); $('#report').accordion('destroy'); $('#report').accordion({collapsible:true, active:false}); }); }
JavaScript 解凍ツールはその目的を果たしますが、次のような制限があります。
以上がJavaScript を使用して Web ブラウザでファイルを非同期に解凍するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。