Beispiel #1
0
int main()
{
	ifstream image;
	image.open("/home/cxy229/image/data.dat");
    if(!image.good())     //文件未成功打开
    {
        cerr<<" error:: unable to open image! "<<endl;
        exit(1);
    }
    char aaaa[4]={'a','b','c','d'};
    int w[4]={5,6,7,8};
    HuffmanTree<char> test;
    test.setTree(w,aaaa,4,0);
    test.encode(test.getroot(),"");
    cout<<"d:"<<test.coding('d')<<endl;
	cout<<"c:"<<test.coding('c')<<endl;
    cout<<"b:"<<test.coding('b')<<endl;
    cout<<"a:"<<test.coding('a')<<endl;
    cout<<test.uncoding("010110");
    cout<<endl;

    imgCompressor img;
    img.run();
    return 0;
}
Beispiel #2
0
void imgCompressor::decompresse()
{
    ifstream img_com;
    img_com.open("/home/cxy229/image/img_compressed");
    if(!img_com.good())    //文件未成功打开
    {
        cerr<<" error:: unable to open img_compressed! "<<endl;
        exit(1);
    }
    ofstream img_decom("/home/cxy229/image/img_decompressed",ios::out|ios::app);
    if(!img_decom)
    {
        cout<<" fail to open img_decom"<<endl;
        exit(1);
    }

    char temp[100];
    string str;
    while(!img_com.eof())
    {
        img_com.getline(temp,99);
        str = swich(temp,strlen(temp));
        //cout<<str;
        img_decom<<h_tree.uncoding(str)<<endl;
    }
    img_com.close();
    img_decom.close();
}