Thread View: pl.comp.programming
6 messages
6 total messages
Started by ch... Krzysztof Gozdziewski
Tue, 16 Apr 1996 00:00
Kodowanie pliku ASCII
Author: ch... Krzysztof Gozdziewski
Date: Tue, 16 Apr 1996 00:00
Date: Tue, 16 Apr 1996 00:00
16 lines
1043 bytes
1043 bytes
Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na 'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ? Chodzi po porstu o tak rzecz: mam duza baze danych ASCII (2MB), chce ja tak zapisac, zeby nie mozna jej bylo w prosty sposob odczytac, i zmniejszyc rownoczesnie plik. Jesli ktos moglby mi podsunac jakis pomysl, to bardzo prosze o pomoc. K. Gozdziewski -- ^-^ ~ Krzysztof Go\'zdziewski (o o) ~ Institute of Astronomy, N Copernicus University =*= ~ Chopina 12/18, PL-87-100 Torun, POLAND (m_m) ~ ch...@astri.uni.torun.pl, phone (48 56) 260-17 ext. 80
Re: Kodowanie pliku ASCII
Author: zy... Zbigniew Zych
Date: Tue, 16 Apr 1996 00:00
Date: Tue, 16 Apr 1996 00:00
62 lines
2483 bytes
2483 bytes
Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote:
: Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco
: zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na
: 'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ?
: Chodzi po porstu o tak rzecz: mam duza baze danych ASCII (2MB), chce
: ja tak zapisac, zeby nie mozna jej bylo w prosty sposob odczytac, i
: zmniejszyc rownoczesnie plik.
Rozumiem, ze chcesz programem obslugi bazy czytac i pisac od razu
do/z postaci skompresowanej?
A moze tak:
Litery+ cyfry = 26+26+10 znakow (duze i male litery)
to daje razem: 62 znaki
Czyli bombowo!
64 znaki - to daje: 6 bitow.
Stosujesz wlasna tabele przekodowania:
a = 0
b = 1
....
z = 25
A = 26
B = 27
....
Z = 51
0 = 52
1 = 53
....
9 = 61
Pozostale dwa kody wykorzystujesz do zakodowania pozostalych znakow
Jesli teraz chcesz zakodowac np: Abc, to dostajesz ciag:
26, 1, 2
Ale nie zapisujesz tego na osobnych bajtach, ale polacz:
czyli 26 zapisz na pierwszych 6 bitach pierwszego bajtu,
1 zapisz na 6 bitach, ale na 2 bitach z pierwszego, i na 4 z 2 bajtu.
2 na 4 bitach z 2 bajtu i 2 bitach z 3 bajtu...
Jak widac uzyskujesz (w przypadku tekstow zlozonych wylacznie z liter
i cyfr) stosunek upakowania: 4 do 3 (4 znaki na 3 bajtach).
To nie duzo... fakt..
Klopoty:
1. kodowanie/odczyt tak spakowanych danych
(trzeba sie grzebac w bitach...)
2. trzeba sie zastanowic jak zakodowac reszte znakow...
Mozna sie zastanowic i np. kodowac jeszcze inaczej, np. zakladajac
ze w tekstach glownie wystepuja male litery, oraz kilka znakow
(przecinek, kropka wykrzyknik, nawiasy... etc...)
zakodowac jako slownik podstawowy: male litery, cyfry i te znaki,
a reszte jako zlozone znaki...
(np. 63 i nastepnie 1 to moze byc np. duza litera B... etc...)
Zbigniew Zych
--
PGP finger: zy...@sol.pp.net.pl IRC Admin @ irc.agh.edu.pl
<a href="http://www.pp.net.pl/"> Peter Pan K.P.K. Piotr Wende</a>
Re: Kodowanie pliku ASCII
Author: Piotr Keplicz
Date: Tue, 16 Apr 1996 00:00
Date: Tue, 16 Apr 1996 00:00
16 lines
1343 bytes
1343 bytes
ch...@ncac.torun.pl (Krzysztof Gozdziewski) wrote: >Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco >zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na >'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ? >Chodzi po porstu o tak rzecz: mam duza baze danych ASCII (2MB), chce >ja tak zapisac, zeby nie mozna jej bylo w prosty sposob odczytac, i >zmniejszyc rownoczesnie plik. > Najlepiej spakuj dane jakims pakerem (najlepiej RARem) i uzyj jakiegos programiku do szyfrowania (najlepiej http://melkor.mimuw.edu.pl/~keplicz/piotr/ftp/safedata.rar). Trudno o lepsza metode, zwlaszcza ze hasla w pakerach latwo zlamac! -- ___ _ _ | . ) |/ / Piotr Keplicz kep...@crab.mimuw.edu.pl |__||_|\_\ http://melkor.mimuw.edu.pl/~keplicz/piotr
Re: Kodowanie pliku ASCII
Author: ufpr... Witold Przygoda
Date: Tue, 16 Apr 1996 00:00
Date: Tue, 16 Apr 1996 00:00
11 lines
899 bytes
899 bytes
Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote: > Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco > zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na > 'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ? Tak: 'zwyczajna kompresja' + haslo :-))) Wlasciwie czemu nie? Wez np. RAR-a 2.0, spakuj wraz z opcja haslo i nie bedzie tego mozna "w prosty sposob odczytac" WP.
Re: Kodowanie pliku ASCII
Author: j... Jerzy Tarasiuk
Date: Wed, 17 Apr 1996 00:00
Date: Wed, 17 Apr 1996 00:00
32 lines
1532 bytes
1532 bytes
>>>>> "Z" == Zbigniew Zych <zy...@pp.net.pl> writes: > Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote: >: Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco >: zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na Z> Rozumiem, ze chcesz programem obslugi bazy czytac i pisac od razu Z> do/z postaci skompresowanej? Z> A moze tak: Z> Litery+ cyfry = 26+26+10 znakow (duze i male litery) Z> to daje razem: 62 znaki Z> Czyli bombowo! Z> 64 znaki - to daje: 6 bitow. Z> Stosujesz wlasna tabele przekodowania: Z> a = 0 Z> b = 1 Z> .... Z> z = 25 Z> A = 26 Z> B = 27 Z> .... Z> Z = 51 Z> 0 = 52 Z> 1 = 53 Z> .... Z> 9 = 61 Z> Pozostale dwa kody wykorzystujesz do zakodowania pozostalych znakow To moze lepiej kodowanie Huffmana? Wyniki beda nieco lepsze (w klasie metod z zamiana kodow znakow kodowanie Huffmana daje najwieksza kompresje, jaka jest mozliwa; ale bylo uzywane tylko w ARC-u i PKARC-u, potem zaczeto stosowac lepsze metody kodujace ciagi znakow jako pojedyncze znaki).
Re: Kodowanie pliku ASCII
Author: ch... Krzysztof Gozdziewski
Date: Wed, 17 Apr 1996 00:00
Date: Wed, 17 Apr 1996 00:00
19 lines
1272 bytes
1272 bytes
Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote: : Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco Dziekue wszystkim za odzew. Mea culpa, bo nie wyrazilem sie do konca jasno: chodzilo mi o mozliwosc zakodowania bazy danych ale z mozliwoscia korzystania z niej pozniej w programie (na biezaco), wiec pomysly z uzyciem pakera raczej mnie nie urzadzaly. Najprostsze (najlepsze) rozwiazniem okazalo sie stworzenie 'wlasnego' ASCII jak to bylo sugerowane przez Zbigniewa Zycha --- ja moge sie zadowolic wylacznie malymi literami alfabetu wiec mam kompresje cos kolo 50%, a to juz jest niezle. Dzieki. Krzysztof -- ^-^ ~ Krzysztof Go\'zdziewski (o o) ~ Institute of Astronomy, N Copernicus University =*= ~ Chopina 12/18, PL-87-100 Torun, POLAND (m_m) ~ ch...@astri.uni.torun.pl, phone (48 56) 260-17 ext. 80
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads