#ruby #encoding #utf-8 #character-encoding #encode
#ruby #кодирование #utf-8 #кодировка символов #кодировать
Вопрос:
У меня проблема с преобразованием файла кодировки ANSI в файл кодировки UTF-8.
Операционная система: Windows 7 Enterprise 64-разрядная версия с пакетом обновления 1
Версия Ruby: ruby 2.3.1p112 (2016-04-26 редакция 54768)
File.open("1.xml",'r:UTF-8') do |f|
File.open("result.xml","w:UTF-8") do |out|
out.write(f.read.force_encoding("utf-8"))
#encode("iso-8859-1").force_encoding("utf-8")
end
end
Я тоже пробовал; выводите ту же кодировку с помощью ANSI.
File.open("test.xml","w:UTF-8") do |f|
f.write("Some text")
end
Моя проблема в том, что я хочу прочитать файл здесь 1.xml который кодирует ANSI, затем сохраните его содержимое в новый файл с кодировкой UTF-8.
Я исследовал много часов, но я не получил результата.
Заранее спасибо.
Комментарии:
1. Поделитесь XML-прологом , т.Е. Первой строкой, которая может читать что-то вроде (XML по умолчанию)
<?xml version="1.0" encoding="UTF-8"?>
или<?xml version="1.0" encoding="iso-8859-1"?>
2. Я попробовал ваше предложение, я вручную создал небольшой XML-файл и добавил строку (XML prolog) в начало документа, но это не работает.