Lista winnt@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [WINNT] Problem z odczytem plików

To: winnt@man.lodz.pl
Subject: Re: [WINNT] Problem z odczytem plików
From: "Andrzej P. Wozniak" <uszer@poczta.onet.pl.invalid>
Date: Mon, 11 Nov 2013 01:33:57 +0100
Osoba podpisana jako ACMM-033 <valhalla@interia.pl> w artykule
<news:l5mmtb$pbv$1@node1.news.atman.pl> pisze:

Użytkownik "Andrzej P. Wozniak" <uszer@poczta.onet.pl.invalid> napisał w
wiadomości news:527eb0f7$0$2152$65785112@news.neostrada.pl...
Niekoniecznie. Taki komunikat IrfanView daje też dla niektórych
prawidłowych i obsługiwanych plików, które nie mają rozszerzenia (nie mam
                                             ^^^^^^^^^^^^^^^^^^^^^
przykładu pod ręką). Jeśli plik ma rozszerzenie błędne, ale obsługiwane,
IrfanView zgłasza nieprawidłową nazwę i pyta, czy zmienić rozszerzenie
na poprawne.      ^^^^^^^^^^^^^^^^^^^
Ale wtedy nie pyszczy, że nie może odczytać nagłówka, jeszcze mi się nie
zdarzyło, a korzystam z niego od dawna i różne różności miałem na dysku.

Przecież napisałem, że przy niepoprawnym rozszerzeniu zgłasza
nieprawidłowość _nazwy_ pliku, a nie jego nagłówka.
Z tym brakiem rozszerzenia też się trochę wyjaśniło - IrfanView najpierw
próbuje rozpoznać format pliku na podstawie jego nagłówka, potem na
podstawie rozszerzenia, a jak tego nie ma, może zgłaszać błąd.
Przykładowo formatu WEBM nie ma na liście możliwych skojarzeń (jest tylko
WEBP), ale mam go na liście plików ładowanych – i rzeczywiście IV nie
rozpoznaje pliku WEBM bez rozszerzenia, ale ładuje go do własnego
odtwarzacza multimediów i odtwarza, bo mam zainstalowaną obsługę webm.

Wreszcie trzeba zauważyć, że ten komunikat IV jest komunikatem uniwersalnym,
bo zawiera więcej niż jedną możliwą przyczynę błędu:
/----
Nie moge rozpoznac naglowka pliku !
Nieznany format pliku lub niewlasciwa nazwa!
(dla nazw Unicode prosze wlaczyc modul Unicode w 'Ustawienia->Jezyk')"

Can't read file header !
Unknown file format, empty file or file not found !
(for unicode file names please activate the Unicode PlugIn in
'Properties->Languages')
\----
Jest więc zgłaszany również zamiast prostego komunikatu "File not found".

A to, co mówię o czcionce - nawojowałem się z tym, przy porządkowaniu
plikoteki MP3 z zewnątrz. Sam pliczek (nie każdy) ładniutko gra spod F3
(Total Commander),

Nie każdy, bo trzeba zainstalować lepsze kodeki. Systemowe mają kłopoty
z wartościami kbps > 128 czy z VBR.

ale spakować/zarchiwizować się nie daje, rozwalając mi całą robotę.

Używasz bardzo starej wersji Total Commandera albo jakiegoś starego pakera.
Albo masz wspomnienia z Win9x/Win2k. Przy okazji - pakowanie wewnętrznie
skompresowanych plików nie ma większego sensu. Lepiej raz zmarnować trochę
miejsca na dysku niż za każdym razem marnować moc procesora, czas i miejsce
na rozpakowywanie archiwów. Do generowania danych naprawczych możesz używać
par2/par3, np. z pomocÄ… MultiPar.

Czasem cała bateria plików, i kilkaset, bywało, a nawet wszystkie, bardzo
różnie. Nie mam pod ręką, sztuczka polegała na
wtrÄ…ceniu w nazwÄ™ pliku, znaku unicode o innym kodzie, ale o
identycznie widzianej literze.

To nic nowego. Takie litery to homografy, a w przypadku nazw plików _zwykle_
to nie jest żadna specjalnie stosowana sztuczka, tylko pośpiech czy lenistwo
przy korzystaniu z rosyjskiej klawiatury. Co innego w przypadku domen
internetowych – wtedy mówi się o typosquattingu czy ataku homograficznym.

Nazwa pliku była widoczna prawidłowo,
ale pakery wariowały widząc znak spoza poprawnego zestawu, włącznie z
komunikatem o niemożności odczyt pliku, nie od razu skojarzyłem, że
rzeczonÄ… nazwÄ™ z krzakiem podaje. Chyba tylko ZIP z TC sobie z nimi
radził.

Z cyrylicą mam do czynienia niemal na co dzień (lubię czytać w oryginale)
i jakoś pod XP problemów nie sprawia ani zip, ani 7-zip czy winrar,
a przecież nazwa pliku jest w cyrylicy, zaś rozszerzenie w ASCII. Nowsze
wersje Total Commandera poprawnie obsługują Unikod w obu wersjach kodowania
(UTF-16 i UTF-8). Jak już pisałem, problemy mogą sprawiać pliki z innego
systemu operacyjnego czy innego systemu plików, np.
- zapisywane pod Win9x na partycji FAT32,
- pakowane z konsoli z nazwami zapisanymi cyrylicÄ… w kodowaniu dosowym,
- pakowane pod Linuxem z nazwami w ISO bądź UTF-8,
ale raczej nie bezpośrednio, tylko po bezmyślnym przepakowaniu z użyciem
starszych, nieunikodowych narzędzi pod systemem pracującym z inną stroną
kodową niż kodowanie użyte w nazwach plików  - bo wtedy pojawiają się błędy
w konwersji nazw i zamiast poprawnych liter pojawiajÄ… siÄ™ krzaczki.

Ale nie chcę się wdawać w dalsze dygresje, bo to już się robi tl;dr.

--
Andrzej P. Woźniak uszer@pochta.onet.pl (zamień miejscami z<->h w adresie)

<Pop. w WÄ…tku] Aktualny WÄ…tek [Nast. w WÄ…tku>