?? main.cpp
字號:
// huffman.cpp : Defines the entry point for the console application.
//
#include <iostream>
#include <cstdlib>
#include <tchar.h>
#include "huffman.h"
#include "main.h"
#include "listallfile.h"
#include "merge.h"
int _tmain(int argc, _TCHAR* argv[])
{
if (argc != 4)
{
wprintf(L" bad arguments.\n");
wprintf(L" %s -e sourfile destfile\n",argv[0]);
wprintf(L" %s -d sourfile destfile\n",argv[0]);
exit(1);
}
else
{
if (!wcscmp(argv[1], L"-e"))
{
if (ListAllFile(argv[2])==0)
{
LPTSTR newname;
wprintf(L"DIRECTORY\n");
for (int i=0;i<nCount;i++)
{
newname=(LPTSTR) malloc (BUFSIZE);
StringCbCopyN (newname, BUFSIZE, namelist[i] , 256);
StringCbCatN (newname, BUFSIZE, TEXT(".var"), 4*sizeof(TCHAR));
CompressHuffman (namelist[i] ,newname);
MergeFile(newname,argv[3]);
DeleteFile(newname);
_tprintf (TEXT("%s \n"), namelist[i]);
free (newname);
}
}
else
{
LPTSTR newname=(LPTSTR) malloc (BUFSIZE);
StringCbCopyN (newname, BUFSIZE, argv[2] , 256);
StringCbCatN (newname, BUFSIZE, TEXT(".var"), 4*sizeof(TCHAR));
CompressHuffman (argv[2] ,newname);
MergeFile(newname,argv[3]);
DeleteFile(newname);
free (newname);
}
}
else if (!wcscmp(argv[1], L"-d"))
{
SplitFile(argv[2] ,argv[3]);
ListAllFile(argv[3]);
LPTSTR newname;
for (int i=0;i<nCount;i++)
{
newname=(LPTSTR) malloc (BUFSIZE);
int len=wcslen(namelist[i]);
wprintf(L"%s:%d\n", namelist[i],len);
StringCbCopyN (newname, BUFSIZE, namelist[i] , (len-4)*sizeof(TCHAR));
wprintf(L"%s\n", newname);
DecompressHuffman (namelist[i] ,newname);
DeleteFile(namelist[i]);
_tprintf (TEXT("%s DEL\n"), namelist[i]);
free (newname);
}
}
else
{
wprintf(L"bad argument %s.\n", argv[4]);
exit(1);
}
}
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -