📄 testlzw.cpp
字号:
// TestLzw.cpp:实现文件数据的压缩和解压.
//
#include <windows.h>
#include "LZW.h"
//---------------------------------------------------------------------------
// 压缩函数.
void EncodeFile(LPCSTR szFileName,LPCSTR szFileTarget)
{
FILE *fpr,*fpw;
if((fpw=fopen(szFileTarget,"wb"))==NULL)
return;
int c;
CLZW lzw;
lzw.compress_init(fpw,9);
if((fpr=fopen(szFileName,"rb"))!=NULL) {
while((c=getc(fpr))!=EOF)
lzw.compress_byte(c);
fclose(fpr);
}
lzw.compress_term();
fclose(fpw);
}
//---------------------------------------------------------------------------
// 解压函数.
void DecodeFile(LPCSTR szFileName,LPCSTR szFileTarget)
{
FILE *fpr,*fpw;
if((fpr=fopen(szFileName,"rb"))==NULL)
return;
int c;
CLZW lzw;
lzw.InitLZWCode(fpr,9);
if((fpw=fopen(szFileTarget,"wb"))!=NULL) {
while((c=lzw.LZWReadByte())!=257)
fputc(c,fpw);
fclose(fpw);
}
fclose(fpr);
}
//---------------------------------------------------------------------------
// 主函数.
void main()
{
EncodeFile("calc.exe","calc.tmp");
DecodeFile("calc.tmp","calc_new.exe");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -