2017-12-09 5 views
0

Ich habe eine Web-Anwendung, die POST-Daten empfangen, die den Fehler werfen zu reproduzieren.Wie BOM Konvertierungsfehler

Ich konnte den Fehler in Tests nicht reproduzieren. Gibt es eine Möglichkeit, eine Zeichenfolge zu erstellen, um diesen Fehler zu verursachen?

Antwort

0

Ein Stand-alone-Programm, den Fehler zu reproduzieren:

#encoding: ascii 
string = "\xEFTest" 

puts string.encoding 
puts string.encode('utf-8') 

Wenn Sie es in einem Programm benötigen Sie verwenden können, `force_encoding ein ähnliches Ergebnis zu erhalten:

string = "\xEFTest" 

puts string.encoding 
string.force_encoding('ASCII-8BIT') 
puts string.encode('utf-8') 

Ergebnis:

test.rb:5:in `encode': "\xEF" from ASCII-8BIT to UTF-8 (Encoding::UndefinedConversionError) 
    from test.rb:5:in `<main>' 
UTF-8