Konwertujesz ascii rosyjski na rosyjski?

4

Mam dokument tekstowy, który powinien być napisany w języku rosyjskim, ale zamiast tego wydaje się być ascii:

Óñòàíîâêà:
1)Çàïóñêàåì QuidamStudioSetup3.15.exe
2)Ïðè çàïðîñå ñåðèéíîãî íîìåðà ââîäèì

Jak przekonwertować to na czytelne rosyjskie znaki Unicode?

jmasterx
źródło
Otwórz plik w MS Word. Może poprawnie odgadnąć kodowanie
phuclv

Odpowiedzi:

9

To nie jest „ASCII” ani „ASCII rosyjski”.

Zanim Unicode stał się powszechny, większość systemów komputerowych używała kodowania znaków ISO-8859, z czego 16 dla każdego regionu (środkowoeuropejski, cyrylica, grecki ...). System Windows miał własne „strony kodowe”, bardzo podobne, ale z dodatkowymi glifami w nieużywanych zakresach. Wszystkie te kodowania znaków są 8-bitowe i różnią się tylko w drugiej połowie (128-255).

Problem z tymi kodowaniami polega na tym, że prawie niemożliwe jest, aby program określił, które kodowanie zostało użyte do zapisania pliku, chyba że zostało to określone wprost (np. Na stronach HTML; jednak zwykłe pliki tekstowe nie mają takich znaczników metadanych). Przeczytaj artykuł w Wikipedii na temat Mojibake, aby uzyskać bardziej szczegółowy opis.

W twoim przykładzie dokument został zapisany przy użyciu Windows-1251 (cyrylica), ale twój program odczytuje go tak, jakby to był Windows-1252 (Europa Zachodnia), który ma bardzo różne znaki w tych samych pozycjach. Dla komputera wygląda to całkiem dobrze - nie rozumie języków ani skryptów. (Są jednak programy, które przeprowadzają analizy statystyczne w celu ustalenia poprawnego kodowania - niektóre przeglądarki mają taką funkcję.)

Istnieje kilka sposobów konwersji takiego tekstu na Unicode:

  • Skorzystaj z narzędzi online, takich jak ten lub ten .

  • Użyj swojej przeglądarki internetowej:

    1. Przeciągnij .txtplik do przeglądarki.

    2. Z Widok → Kodowanie znaków (lub Firefox → Web Developer → Kodowanie znaków lub Klucz → Narzędzia → Kodowanie ), wybierz właściwe oryginalne kodowanie: „Cyrylica (Windows-1251)” w twoim przypadku.

  • Użyj edytora tekstu Notepad2 :

    1. Otwórz plik.

    2. Z menu Plik → Kodowanie → Przekoduj ... , wybierz właściwe oryginalne kodowanie.

  • Użyj GNU iconvz binariami Windows albo z GnuWin32 lub Gettext dla Win32 .

    iconv -f cp1251 -t utf-8 < myfile.txt > myfile.fixed.txt

    Notatnik Windows poprawnie odczyta tekst zakodowany w UTF-8 i UTF-16.

grawitacja
źródło
3

Możesz przekonwertować kodowanie za pomocą programu takiego jak iconv - ale musisz wiedzieć, jakie kodowanie zostało użyte.

Wygląda na Windows-1251 według losowej strony znalezionej przez Google.

:
Становка : 1) Quапускаем QuidamStudioSetup3.15.exe
2) При запросе серийного номера вводим

Nie znam rosyjskiego, ale wklejenie go na translate.google.com sugeruje, że powyższe jest prawdopodobne:

instalacja:
1) Uruchom QuidamStudioSetup3.15.exe
2) Po wyświetleniu monitu wprowadź numer seryjny

Więc ...

iconv -f 1252 -t UTF-8 document.txt

Należy przekonwertować plik testowy na coś, co można otworzyć i odczytać w Notatniku

RedGrittyBrick
źródło
Znam rosyjski i masz rację, to Windows-1251.
haimg