Skocz do zawartości
Kowa1

Strona kodowa - czarna magia

Rekomendowane odpowiedzi

Obczytałem się "po pachy" i nie pojmuje - nadal.

 

Przykład "założycielski".

 

Jest sobie strona internetowa ( tutaj ) napisana w cyrylicy. W przeglądarce wyświetla się poprawnie, w każdej przeglądarce.

 

Obrazek Nr 1

Dołączona grafika

 

Jak widać kodowanie ( strona kodowa ) Windows-1251.

 

Postanowiłem raz na zawsze rozwiązać problem ściąganych, czy kopiowanych tekstów.

Zaopatrzyłem się w program EditPad ( wersja 6.2.2 ) który swobodnie potrafi zmienić stronę kodową

 

Obrazek nr 2

Dołączona grafika

 

zadowolony robie co następuje:

 

1) otwieram stronę i kopiuje fragment

 

Obrazek Nr 3

Dołączona grafika

 

2) wklejam do otwartego okna programu EditPad

 

Obrazek Nr 4

Dołączona grafika

 

krzaki, rozumiem zła strona kodowa w Editpad, więc

 

3) zmieniam stronę kodową na tą w której kodowana strona internetowa ( Windows-1251 ) jak widać na obrazku Nr 1

 

a)

 

Dołączona grafika

 

b)

 

Dołączona grafika

 

4) klikam OK i uzyskuje efekt, a właściwie uzyskuje brak efektu czyli po polsku nie uzyskuje oczekiwanego efektu

 

Dołączona grafika

 

czyli to samo co już było - krzaki.

 

Urwał, URWAŁŁŁŁŁ !!!! nie nadążam.

 

+=+=+=+-----------

 

Powyżej prosty przykład, pytań i wątpliwości znacznie więcej.

 

Mam prośbę.

 

Chciałbym tu logicznie "rozebrać" temat do dna i od dna.

 

Zaczynając od początku - strona kodowa a czcionka, na początek wystarczy już mi brak czasu.

 

""""""""""""""""""""""""""""""""""""""""""""""""""

 

Zapodaje kolejną ciekawostkę.

Sciągnołem w archiwum wraz z innymi plik tekstowy ( ruski ).

Otwieram go w Notatniku ( Notepad.exe ) - krzaki.

Otwieram go w EditPad - też krzaki, ale ->

Zmieniam w EditPad stronę kodową ( jak - patrz poprzedni post ) na na cyrylice ( Windows-1251 ) i wszystko cztytelne - oczywiście dla tych co znają rosyjski.

OK działa, ale ....

Otwieram plik w Notatniku ( Notepad.exe ), oczywiście krzaki. Zaznaczam zawartość ( te krzaki ) i kopiuje je do EditPad. Nadal krzaki - rozumiem, w EditPad niewłaściwa strona lodowa.

Zmieniam w EditPad stronę kodową ( jak - patrz wcześniejszy mój post ) na cyrylicę ( Windows-1251 ) i .... nadal krzaki !!!!!!!!!!!!

Nie rozumiem ??????????????

Dlaczego raz działa a innyn razem nie ?????????

( Kto nte rozunie/łapie o czym piszre niech jeszcze raz przeczyta. )

 

Kto to potafi wytłumaczyć? ?????????????

 

""""""""""""""""""""""""""""""""""""""""""""""""""""""

 

Ostatecznie wymyśliłem tak: widze krzaki, zaznaczam krzaki, kopiuje krzaki to i mam, na końcu, krzaki - pasi.

 

Ale co się dzieje jak kopiuje tekst ze strony otwartej w przeglądarce ?????

 

Widzę tekst, zaznaczam tekst, kopiuje tekst a na końcu znowu krzaki, nawet jak mam w EditPad właściwą stroną kodową. ????

 

Pomyślałem że może system jakoś "po drodze" "wkłada rączkę" do tej całej operacji wkońcu to nie leci w powietrzu, jest kopiowane do schowka a potem z niego wyciągane.

 

Co zrobić? Proste zmienić język systemowy. Zmieniam język

 

Dołączona grafika

 

i fakt jest po rusku

 

Dołączona grafika

 

robie kopiowanie jak uprzednio i co ?? krzaki .

 

Czemu to nie działa ? HGW .

 

Sprawa mnie zmóżdzża do poziomu Kiepskiego - ma kto jakiego pomysła ?

 

Jak można zmienić aktualną stronę kodową systemu.

 

Co ciekawe zmiana języka jak na pierwszym obrazku działa tylko dla aktualnie aktywnej aplikacji i utrzymuje się dla niej, czyli możemy mieć jednocześnie uruchomione: jedną przeglądarkę po polsku, drugą po rosyjsku, wordpad po angielsku a pulpit po chińsku.

 

I jeszcze jedno notepad ( notatnik ) nie umożliwia zmiany języka - czyli jak notepad jest aktualnie aktywną aplikacją zmiana języka jak na pierwszym obrazku jest niemożliwa tylko polski.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Ostatecznie wymyśliłem tak: widze krzaki, zaznaczam krzaki, kopiuje krzaki to i mam, na końcu, krzaki - pasi.

 

Ale co się dzieje jak kopiuje tekst ze strony otwartej w przeglądarce ?????

 

Widzę tekst, zaznaczam tekst, kopiuje tekst a na końcu znowu krzaki, nawet jak mam w EditPad właściwą stroną kodową. ????

 

 

Widzisz ruskie krzaki, kopiujesz te krzaki, wklejasz je do EditPad...

Ale (zawsze jest jakieś ale):

 

Co robisz, kiedy kopiujesz teksty tak, jak to zrobiłeś?

  • Kopiujesz tekst z przeglądarki - system ma gdzieś, jaki to charset, skopiuje i tak w UTF-8.
  • Robisz nowy plik, który ma jakiśtam charset. Wątpię, żebyś miał defaultowo ustawiony UTF, bo wtedy na 100% nie byłoby tego tematu. Powiedzmy, że z defaultu jest ansi, czyli w naszym przypadku będzie obowiązywać cp-1250. Nie ma tam żadnego znaku z cyrylicy (chyba, może jest w innym miejscu, ale śmiem wątpić).
  • Wklejasz do pliku w cp-1250 tekst zakodowany w UTF8. System (albo program, dla różnych edytorów- różnie) szuka odpowiednich znaków w odpowiedniej tablicy kodowej i ich nie znajduje (bo docelowy jest w 1250, a nie w 1251). Gdybyś ustawił od razu w pliku odpowiednie kodowanie, prawdopodobnie wszystko byłoby ok. Prawdopodobnie, bo mógłby być problem przy wklejaniu UTF do 1251. Nie używałem nigdy EditPada, więc nie wiem jak zareaguje, bo różne programy różnie działają.
  • Widzisz krzaki, albo pytajniki, frustracja
  • Myślisz- zamienię stronę kodową na rosyjską, może będzie ok. Zmieniasz, przez co konwertujesz nieistniejące krzaki z polskiej strony kodowej do... rosyjskiej strony kodowej, przez co (w zależności od ilości znaków w czcionce i sposobu wyświetlania przez program) dostajesz albo pytajniki w innej postaci, albo jeszcze większe krzaki.

    Efekt konwersji rosyjskiego, czytelnego tekstu UTF-8 do cp1251, program wyświetla wszystko, co znajdzie w pliku czcionki (znaki kontrolne są specjalnie zaznaczane, ale też je wyświetli), nie bawi się w pytajniki:

    post-21135-1271403760,26_thumb.gif (przy zmianie 1250 na 1251 byłoby pewnie więcej dziwnych znaków w większej ilości miejsc, ale nie chciało mi się dodatkowo klikać ;] )

    W tym miejscu mógłbyś ponownie wkleić tekst i prawdopodobnie widziałbyś wszystko ok. Aczkolwiek po zapisie i ponownym otwarciu trzeba by zapewne zmieniać stronę kodową w programie na 1251. Inaczej- krzaki.

  • Widzisz jeszcze większe krzaki... frustracja się pogłębia, myślisz "WTF?"

Co ja robię, kiedy kopiuję?

  • Kopiuję tekst z przeglądarki- ja mam gdzieś, jaki to charset, bo wiem, że system ma to gdzieś. Wyświetlają się, znaczy jest font, czyli da sobie radę.
  • Otwieram sobie edytor. Jeżeli jest to mój edytor (notepad++), to z defaultu (bo dla www robię pod utf) mam UTF-8, więc nawet niczego nie dotykam. Jeżeli mam notatnik- drobna uwaga trochę niżej.
  • Wklejam.
  • Zapisuję... i tutaj uwaga dla notatnika. Zapisuję plik jako UTF-8 (na dole okienka jest opcja, pewnie pisze tam ansi), bo inaczej dostaję od samego notatnika ostrzeżenie:

    post-21135-1271402527,12_thumb.gif

W sumie, do powyższego najważniejsza jest jedna rzecz, którą warto zapamiętać. Wszystkie teksty, które masz w schowku, są w utf8. Jeżeli zapiszesz sobie plik w utf8, też będzie działał. Jak o tym zapomnisz (albo zignorujesz ew. ostrzeżenia), dostaniesz po ponownym otwarciu krzaki.

 

Btw, tak wygląda efekt operacji "firefox -> ctrl+c -> notepad++ -> nowy plik -> ctrl+v -> printScreen" (w windowsowym notatniku mam tak samo):

post-21135-1271401670,87_thumb.gif

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...