Belsejét vordovsky fájlok borzalmas - ó, msbro!

A komplexitás és titokzatosság vordovsky fájlok sokáig legendák. Köztudott volt, hogy ez a formátum nagyon zavaros, és különben is, mindig és teljesen titkos, úgyhogy körülbelül a fele ott a mezők csak találgatni tudta.


Be kell vallanom, hogy én érdekli ezeket a fájlokat, de az első oldalon a leírás mozgok, de nem sikerült. Ugyanakkor lezáratlan gestalt maradt.

Mit is mondhatnék? Nem felidézni a régi elcsépelt anekdota: nos, szörnyű. Nos, csak borzasztó, de ez nem horror, horror, horror.

Hála Istennek, hogy én megvizsgálta a fájlokat Perl, és semmi esetre sem autocode C. A magas szintű nyelvi és sok kész könyvtárak (például olvasni eltérő kódlapot) - Isten ajándéka.

Így együtt egy hetet, és a legnehezebb megérteni a belső formátum. Természetesen a megértése, hogy még nem teljes, mert az volt a célom, hogy távolítsa el a dokumentumot egy szöveges formázás nélkül, de ez az, amit én is.

Szóval, hogyan vannak elrendezve vordovskie fájlokat?

Kezdjük azzal, hogy ez nem vordovskie fájlokat, és egy univerzális tartályt, amelyben a dokumentumok vannak csomagolva rendesen. Egy ilyen tartályba töltött ki minden Office fájlokat is, talán valami más.

Elvileg OLE tároló formátum elég intelligens, és nem kelthet olyan valami teljesen idióta. De ... nem volt szüksége. Tény, hogy ez a valami a FAT16 fájlrendszer típusát, tedd egy külön fájlba. Ez nem olyasmi, amit az égetés a fegyvert verebek, és a pusztítás a legtöbb ilyen verebek nukleáris torpedó. A dokumentum, melyen belül fekszik, néhány fájl, ami nem kell egy fájlrendszer, amely nem kevesebb, mint idején a DOS fájlrendszer.

Így CDF fájlokat (ahogy nevezik őket hasznosságát Unix file) kezdődik a címet. A cím adott helyet az első száz rögzíti a FAT (fájlallokációs tábla, a hétköznapi nyelvben - PAF). PAF, ahol a legtermészetesebb, nagyon hasonlít ahhoz, amit megtalálsz a DOS floppy. A többi bejegyzés TRF egyes ágazatokban csatlakozik láncolt lista. További szektorban csak a nagy (> 7 MB) fájlt.

A kiadó szerint a FAT / TRL összegyűjti a tartalmát bármilyen belső fájlt (a terminológia az SM az úgynevezett flow, de ez csak összezavarja a kérdést), ha tudod, hogy kezdődik egy blokk. Alapvető blokkok különböző struktúrák írásbeli természetesen címet. Ezután az asztal lehet húzni minden ágazatban a lánc, amely azt mondja, a tartalmát ál.

Különösen a CDF van gyökere, hogy fizikailag többszörözött az ágazat kupac. Ez a jelenlegi katalógus, ismét nagyon emlékeztet a régi DOS. Ugyanakkor a hatékonyság (vagy mutogatni), akkor készült nem csak lineáris lista, kiegyensúlyozott bináris fa. Ez azt jelenti, hogy veszteség nélkül a hatékonyság keresési írhat több tízezer egyedi nyilvántartást. Miért ez a fájl, amelyben a bejegyzések általában öt, nos, néha húsz, jól, legfeljebb száz darab (előadás egy hatalmas számú kép) - amelyről csak Redmondban. Mellesleg, a fájlok neveit a könyvtárban tárolja UTF16 - is, csak abban az esetben.

A katalógus meghatározni a kezdő szektor bármely fájlt, és használja TRF húzza a láncot a szállás.

De ez még nem minden.

Mivel nem kis blokk mérete (általában 512 byte, is meg lehet adni, mint 4096), akkor a tárolás a kis ál elméletileg lehetséges, hogy elveszít egy csomó helyet. Ezért van egy külön tároló, osztva a szemekhez 64 bájt. Tárolás ismét rajzolt a FAT lánc.

Annak megadásához, hogy mely fájlok tulajdonában néhány karika, van egy külön lemez PAF vagy inkább miniFAT.

Tehát, hogy a vordovsky dokumentum, tegye a következőket:

1. Olvassa el a címet CDF
2. Töltse le a FAT memória - fájlallokációs tábla, összeszedte a lánc szektorban.
3. Feltöltés lemez MiniFAT összeszedte a TRF-lánc
4. Feltöltés csigák tároló, összegyűjtése a TRF-lánc
5. Töltse fel a gyökérkönyvtárban, összegyűjtése a TRF-lánc
6. Szerelje le a katalógusban, és alakítani valami olvasható
7. Keresse bejegyzés a könyvtárban WordDocument
8. Ha ez egy kis fájlt, majd fordítsd le a segítségével miniTRF adattár csigák.
9. Ha magas, akkor húzza ki a meghajtót a szektor a FAT-lánc.

Minden lépés önmagában nem különösebben bonyolult, de összességében okoznak csak zavarodottság. Miért olyan nehéz? Miért ne tegye a fejléc után egy közönséges line katalógus, és utána folyamatosan, egymás után, hogy rögzítse a belső fájlok?

Az egyetlen dolog, amelyről feltételezhető, - mindez azért van szükség, hogy képes építeni az al-fájlokat, hogy ne érjen az elején a fő fájl. Meg kell jegyezni, hogy egyrészt ez nem sok a kereslet működése, mert lényegében minden programot általában írásos dokumentumok az elejétől a végéig egy menetben. Az egyetlen kivétel az MS Word és akkor is csak a hírhedt rezsim gyorsan menteni, átkozott felhasználók. Másrészt, még ilyen körülmények között még mindig nem működik ne érintse az elején a fő fájl, mert szükséges, hogy frissítse a katalógusok, TRF és címoldalára.

WordDocument

CDF formátum minden szörnyűség legalább logikus és nem túl bonyolult (szemben a többi a dokumentum tartalma vordovsky). Ő leírásban csak mintegy húsz oldalas - Huh, míg 300 oldalas Ward formátumban.

A formátum a dokumentum nehezen is hívja formátum sokkal többről van szó illik a meghatározás a rock történetében. Képzeljünk el egy kő szikla, amelyre nyomtatták és ötven millió évvel a bolygó történetében. Itt mezozoikum réteg, itt Cenozoic, hogy a lenyomata a szárny egy szárnyas gyík, és a tetején már Felsőfokú üledékek. Nagyjából ugyanazt a megjelenés és a dokumentum belsejében.

Csak nézd meg a címet, ami elfoglalja csaknem egyharmadát fájlt. Címek három. Először is ott van egy kicsi, amelyben a fele a bejegyzések tátongó lyukak «fenntartva» vagy «Nem használt». Korábban, a mezozoikum, egyértelműen valami feküdt, de aztán kidobták a szemétdombra a történelem. Van is egy változata a felvett program, amely a kódot úgy tűnik, hogy végre egy hatalmas switch / case.

Ezután következik a második címet, amely a tizenhat bites szó. Ez nem túl hasznos. A korai előírt méretet egyértelműen oly módon, hogy nem lesz letétbe kagyló csak az úton.

Aztán jön a harmadik fejléc, ezúttal egy modern, hosszú szavak (32 bit). Ő nemeryannom hossza, az elején is jelzi a rekordok száma egy szem további terjeszkedés, és alapvetően egy lista, hogy hol találja a különböző táblázatok és a fájl darab - egy pár start / méret. Táblázatok maguk, mellesleg, nem itt, hanem egy külön ál CDF úgynevezett 0Table vagy 1Table (variáció lehetséges).

Az élet valójában sokkal bonyolultabb. Miután a fájlokat, hogy tényleg csak a szöveget, de idővel a nyomás épül fel a felhasználók és a marketing a különböző „szolgáltatás”. Alattuk vett külön stream - egyszerű lábjegyzetek, végjegyzetek végén, a fejléc alatt vagy lábléc, semmilyen szövegdobozba (más perverzió - formájában szöveget, de nem a szöveg kijelölése nem igazán világos.).

Kezdve a gazdasági folyamatok vannak feltüntetve különleges helyeken a cím, de a címet a legelső oka mutatja a teljes hossza - nem a szöveget, és a szöveg, valamint az összes ezeket a torzulásokat. Ez az első ok, amiért a következtetést számos felhasználási esik feliratokkal, mint 1. oldal.

Elméletileg ez az összetett méret csak akkor aktiválódik, ha fComplex különleges zászló meg a fejlécben. De ... Itt, ezen a következő „de” túl sok átalakítók áttört.

A mi korunkban a dokumentumokban adtunk képes írni Unicode-ban. Ebben az esetben a probléma volt (ami engem illet, erőltetett), hanem azért, mert a fájlok kapunk pontosan kétszer olyan hosszú. Mivel a szoftvert fejlesztett az amerikaiak, akik a szíve nem hitt a létezését egyéb ábécé és titokban úgy vélik, hogy mindenféle furcsa betűk csak disszertációkban mintegy ókori Görögországban, és ott fordul elő csak alkalmanként, az első dolog, ami eszébe jutott -, hogy elkülönítsék a tiszta szimbólumok ASCII piszkos Unicode. Először bájtbeírás per karakter, míg az utóbbi - amint ez lesz.

Ha figyelembe vesszük, hogy ez a nagyon táblázat Ogryzkov is zajlik, és még több helyet a fájl foglalnak különböző bináris fák és tabletták láncok szektor CDF formátum, majd mentse a szöveg méretét a Unicode karakterek nem elfog a képzelet még az ókori görög dolgozat. Körülbelül fájlokat a nagy és hatalmas nyelv és semmit sem mondani. Szeretné, hogy mindent UTF-16, és nem szenvednek. Nos archiválható áramlási idő, így a varangy prések.

Miután hősies erőfeszítések olvassa a szöveget, önmagában, furcsa módon, nem nagy ügy. Egyszerű szöveg (korrigált kódolás), egyes kódok alatt szóköz játszik kisegítő szerepet. Például, 0h9 jelzi, mint az várható volt, fülek, 0HA - oldal végére 0h7 - a végén a táblázat cella, stb Az egyetlen finomság kapcsolódó területeken. A mező tartalma nevezik elején 0h13, a végén a területen - 0h15, a nevét és a paramétereket a területen elválasztott szimbólum 0h14 amit valójában látható a szöveg a felhasználó számára. De ... A második rész lehet egy beágyazott területen, hogy sok program nem veszi figyelembe. Ennek eredményeként, a szöveg marad darabka mint INCLUDEPICTURE vagy PAGEREF *.

Van azonban egy kisebb bajt. Egyes jelek azt jelentheti, valami teljesen más, mint az aktuális dátum. Ahhoz, hogy megértsük ezt az egyszerű szimbólum, vagy sem, meg kell szétszedni az asztalra karakter tulajdonságait, amelyek az alábbiakban. Bevallom, egyszerűen kivágták az összes karaktert az alábbi kódot a szóköz, ami nem elég, de ez olcsó, gyors és praktikus.

Tépd ki a szöveget a formátum, nem ment bele. Ez a tanulság a fiatal és erős lélekben - teszik ki az összes asztal olyan ígéretes címek, mint a CHP PAPX, SHST, PLCF és mind ugyanabban a szellemben. Foglalkozás nem már a Titans - voproizvesti méret pontosan úgy, ahogy teszi magát a Word.

Továbbra is csak, hogy erkölcs, és ez banális: hogy egy személy jött egy másik zavsegda tönkreteheti. Mit Ward kevésbé szégyenletes méret, csúnya és teljesen alkalmatlan a tömeges információcsere feladatok heterogén rendszerek.

További irodalom: