<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	「LZMA 压缩的例子」的评论	</title>
	<atom:link href="https://www.lab-z.com/lzmacmp/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.lab-z.com/lzmacmp/</link>
	<description></description>
	<lastBuildDate>Tue, 21 May 2024 11:10:23 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>
	<item>
		<title>
		评论者：ziv2013		</title>
		<link>https://www.lab-z.com/lzmacmp/#comment-14357</link>

		<dc:creator><![CDATA[ziv2013]]></dc:creator>
		<pubDate>Sat, 23 Jan 2016 13:26:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=1854#comment-14357</guid>

					<description><![CDATA[回复给 &lt;a href=&quot;https://www.lab-z.com/lzmacmp/#comment-14320&quot;&gt;Smartstar&lt;/a&gt;。

我看了一下，具体的解压的话，请参考ULZMAAlone.pas中的下面这一段：

             if inStream.read(properties, propertiesSize) &lt;&gt; propertiesSize then
                raise Exception.Create(&#039;input .lzma file is too short&#039;);
             decoder := TLZMADecoder.Create;
             if not decoder.SetDecoderProperties(properties) then
                raise Exception.Create(&#039;Incorrect stream properties&#039;);
             outSize := 0;
             for i := 0 to 7 do begin
                 v := {shortint}(ReadByte(inStream));
                 if v &lt; 0 then
                    raise Exception.Create(&#039;Can&#039;&#039;t read stream size&#039;);
                 outSize := outSize or v shl (8 * i);
                 end;
             if not decoder.Code(inStream, outStream, outSize) then
                raise Exception.Create(&#039;Error in data stream&#039;);
             decoder.Free;]]></description>
			<content:encoded><![CDATA[<p>回复给 <a href="https://www.lab-z.com/lzmacmp/#comment-14320">Smartstar</a>。</p>
<p>我看了一下，具体的解压的话，请参考ULZMAAlone.pas中的下面这一段：</p>
<p>             if inStream.read(properties, propertiesSize) <> propertiesSize then<br />
                raise Exception.Create(&#8216;input .lzma file is too short&#8217;);<br />
             decoder := TLZMADecoder.Create;<br />
             if not decoder.SetDecoderProperties(properties) then<br />
                raise Exception.Create(&#8216;Incorrect stream properties&#8217;);<br />
             outSize := 0;<br />
             for i := 0 to 7 do begin<br />
                 v := {shortint}(ReadByte(inStream));<br />
                 if v < 0 then
                    raise Exception.Create('Can''t read stream size');
                 outSize := outSize or v shl (8 * i);
                 end;
             if not decoder.Code(inStream, outStream, outSize) then
                raise Exception.Create('Error in data stream');
             decoder.Free;
</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		评论者：Smartstar		</title>
		<link>https://www.lab-z.com/lzmacmp/#comment-14320</link>

		<dc:creator><![CDATA[Smartstar]]></dc:creator>
		<pubDate>Fri, 22 Jan 2016 07:07:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.lab-z.com/?p=1854#comment-14320</guid>

					<description><![CDATA[写得很好，想请教下用LZMA SDK的解压代码要如何写？
现在只会用你给的代码压缩，不会解压啊]]></description>
			<content:encoded><![CDATA[<p>写得很好，想请教下用LZMA SDK的解压代码要如何写？<br />
现在只会用你给的代码压缩，不会解压啊</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
