Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Programy archiwizujące dane

Ostatnio zmodyfikowano 2009-01-18 21:42
Autor Wiadomość
pekfos
Temat założony przez niniejszego użytkownika
Programy archiwizujące dane
» 2009-01-14 16:45:23
mam pytanie: na jakiej zasadzie działają programy do archiwizacji danych?
Jak to robią że pakują pliki do jednego pliku i zmniejszają ich rozmiar?
P-3669
lynx
» 2009-01-14 19:16:01
Artykuł o kompresji danych. :)
P-3670
pekfos
Temat założony przez niniejszego użytkownika
» 2009-01-15 13:29:07
trochę za mało tam przykładów. pisał tu ktoś prosty archiwizer i mógłby się podzielić wiedzą?
P-3674
lynx
» 2009-01-15 13:38:27
hmm... nie pisałem nigdy czegoś takiego. możesz użyć biblioteki libzip (2 http://nih.at/libzip/libzip.html ).
P-3675
pekfos
Temat założony przez niniejszego użytkownika
» 2009-01-15 13:48:37
chodziło mi bardziej o jakiś prosty algorytm kompresji
P-3676
lynx
» 2009-01-15 14:22:19
Kodowanie Huffmana, w linku masz nawet przykład na kodzie. :) Zależy też co chcesz kodować tekst, liczby czy obrazy.

//JCJ: Ortografia!
P-3677
pekfos
Temat założony przez niniejszego użytkownika
» 2009-01-15 14:28:21
ten kod jest w języku C i nic z niego nie rozumiem:(
a kodować chce tylko tekst
P-3678
pekfos
Temat założony przez niniejszego użytkownika
» 2009-01-15 19:32:53
alleluja! dziwnym sposobem udało mi się uzyskać 50% kompresję plików .txt
dziwne przy tym kodzie:
C/C++
#include <iostream>
#include <conio.h>
#include <fstream>
using namespace std;
fstream file1;
fstream file2;
string bufor = "";
string compres = "";
const char baza[ 25 ] = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p',
    'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };
const char basa[ 25 ] = { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '-', '=', '!', '@', '#', '$', '%', '&', '*', '(', ')', '_', '+', '~', '`' };
int main()
{
    cout << "nazwa pliku: ";
    getline( cin, bufor );
    file1.open( bufor.c_str(), ios::in );
    if( file1.good() )
    {
        bufor = "compresed " + bufor;
        file2.open( bufor.c_str(), ios::out );
        while( !file1.eof() )
        {
            getline( file1, bufor );
            for( int b = 0; b < bufor.length(); b++ )
            {
                for( int a = 0; a < 25; a++ )
                {
                    if( bufor[ b ] == baza[ a ] )
                    {
                        compres += basa[ a ];
                    }
                }
            }
            file2 << compres << endl;
            compres = "";
        }
        cout << "finished";
    } else
    {
        cout << "no suh fil or dir" << endl;
    }
    getch();
    return 0;
}
P-3679
« 1 » 2 3 4
  Strona 1 z 4 Następna strona