2010-12-04 7 views
0

Ich versuche, Dokumentation zu lesen, die in geschrieben wurde Ich glaube, Russisch ist, aber ich bin mir nicht sicher, ob das, was ich sehe, sogar richtig codiert ist. Der Text sieht etwa wie folgt aus:Übersetzen unlesbar russischen Text

Ãåíåðèðóåò ìàòðèöó NeO ÷ àéíûõ ÷ ENAE â äèàïàçîíå îò -1 Ai1

(erscheint als mehrere Sonder A und O)

wenn in Firefox geöffnet. In anderen Programmen sieht es so aus:

-1 1

(erscheint als mehrere Fragezeichen)

gibt es Hoffnung, dies zu übersetzen?

Antwort

5

Entschlüsseln als CP1251.

>>> print u'Ãåíåðèðóåò ìàòðèöó ñëó÷àéíûõ ÷èñåë â äèàïàçîí'.encode('latin-1').decode('cp1251') 
Генерирует матрицу случайных чисел в диапазон 
+0

"Erzeugt eine Matrix von Zufallszahlen im Bereich" – thejh

+0

Sprache? Python? –

+0

@ Johnathan: Richtig. Seine REPL eignet sich hervorragend für Einzelstücke wie diese. –

1

Sie benötigen, welche von mehreren möglichen Cyrillic Zeichensätze zu bestimmen, verwendet wurde, - die verlinkte Seite listet mehr als ein Dutzend Möglichkeiten, von denen ISO 8859-5 und CP-1251 sind vielleicht die am wahrscheinlichsten.

Sie können möglicherweise eine der Übersetzung Websites (Babelfish oder Google, und zweifellos andere) zu helfen. Sie müssen jedoch möglicherweise vom ursprünglichen Zeichensatz in UTF-8 übersetzen, damit es funktioniert - das Kopieren der obigen Bytes hat nicht funktioniert.


Wenn der ursprüngliche Text auf einem Mac zu kopieren, es als UTF-8 codiert wurde:

0x0000: C3 83 C3 A5 C3 AD C3 A5 C3 B0 C3 A8 C3 B0 C3 B3 ................ 
0x0010: C3 A5 C3 B2 20 C3 AC C3 A0 C3 B2 C3 B0 C3 A8 C3 .... ........... 
0x0020: B6 C3 B3 20 C3 B1 C3 AB C3 B3 C3 B7 C3 A0 C3 A9 ... ............ 
0x0030: C3 AD C3 BB C3 B5 20 C3 B7 C3 A8 C3 B1 C3 A5 C3 ...... ......... 
0x0040: AB 20 C3 A2 20 C3 A4 C3 A8 C3 A0 C3 AF C3 A0 C3 . .. ........... 
0x0050: A7 C3 AE C3 AD C3 A5 20 C3 AE C3 B2 20 2D 31 20 ....... .... -1 
0x0060: C3 A4 C3 AE 20 31 0A        .... 1. 
0x0067: 

Also, das zu übersetzen, mit Perl, verwendete ich das Encode Modul zuerst die UTF- konvertieren 8-String zurück zu Latin-1, und dann sagte ich Perl die Latin-1 zu behandeln, als ob es CP-1251 war und wandeln das zurück auf UTF-8:

#!/usr/bin/env perl 

use Encode qw(from_to); 
my $source = 'Ãåíåðèðóåò ìàòðèöó ñëó÷àéíûõ ÷èñåë â äèàïàçîíå îò -1 äî 1'; 
# from_to changes things 'in situ' 
my $nbytes = from_to($source, "utf-8", "latin-1"); 
# print "$nbytes: $source\n"; 
    $nbytes = from_to($source, "cp-1251", "utf-8"); 
print "$nbytes: $source\n"; 

die Ausgabe lautet:

  • 102: Генерирует матрицу случайных чисел в диапазоне от -1 до 1

Welche Babelfish übersetzt:

  • 102: Es ist die Matrix von Zufallszahlen im Bereich von -1 erzeugt zu 1

und Google übersetzt:

  • 102: eine Matrix von Zufallszahlen generieren von -1 bis hin zu 1

Die anfänglichen UTF-8 in Latin-1-Übersetzung aufgrund der Setup erforderlich war, auf meinem Mac (mein Terminal verwendet UTF-8 standardmäßig, etc): YMMV.