
Plik binarny a plik tekstowy
Każdy plik jest plikiem binarnym. Każdy plik zawiera bity, czyli zera i jedynki ułożone w bajty. Każdy może być czytany czy zapisywany bajt po bajcie (czasem rekord po rekordzie).
Pliki tekstowe
Plik tekstowy, to plik binarny specjalizowany do przechowywania i prezentowania danych tekstowych.
Na ogół plik tekstowy zawiera:
- tekst ułożony w rzędach (liniach)
- zapis tekstu zawsze jest związany z określoną strona kodową. Tekst zapisany przy użyciu jednej strony kodowej może być częściowo nieczytelny przy odczytaniu w innej stronie kodowej. Komputer musi posiadać czcionki ekranowe i drukarkowe pozwalające na wyświetlanie znaków należących do użytej strony kodowej. Jeśli nie ma odpowiednich czcionek zobaczysz puste kwadraciki.
- dodatkowe znaki przypominające o czasach maszyn do pisania: EOL koniec linii, CR – przesunięcie karetki do początku linii, LF – przesunięcie karetki do następnej linii, etc.
- dodatkowe znaki formatujące
Znaki pisarskie (litery) mogą być zapisywane jako pojedyncze bajty, dwa bajty, a w szczególnych przypadkach nawet przy użyciu trzech bajtów.
Otwieranie plików
Rozszerzenie nazwy pliku informuje o typie informacji przechowywanej w pliku. Pliki tekstowe maja np. rozszerzenie .txt lub inne. Pliki obrazów np. rozszerzenie .jpg, itd.
Edytor obrazów na ogół nie pozwoli na otwarcie pliku tekstowego.
W edytorach tekstowych na ogół można obejrzeć zawartość pliku z dowolnym rozszerzeniem. Jeśli otworzysz plik .jpg czy .png zobaczysz robaczki. Jeśli otworzysz plik tekstowy zobaczysz widok tekstowy (pliku binarnego). W widoku tekstowym na ogół są wyświetlane wyłącznie znaki pisarskie, a pomijane wszelkie inne.
W widoku binarnym, na ogół są widoczne informacje tekstowe zawarte w pliku.
Podsumowanie
Niektórzy znawcy mówią wyłącznie o widoku binarnym i widoku tekstowym.
Uwagi
Na ogół początkujący programiści szukają takiego sposobu binarnego zapisu informacji tekstowej, żeby ten tekst nie był widoczny ani w widoku tekstowym ani w widoku binarnym. Niestety w języku Java nie ma takiej możliwości.
        Nie zapewnia jej ani serializacja, ani zapis OutputData.
Jak zatem ukryć tekst, aby był niewidoczny dla otwierającego plik? Jedyną możliwością jest zaszyfrowanie informacji, albo użycie steganografii lub innej podobnej metody. Można też skutecznie ukryć tekst w wieloplikowej bazie danych. Ale to już zupełnie inny temat.
Obrazki







