(Ive посмотрел на другие вопросы - ни один не казался довольно пригодному моей проблемой.)
У меня есть некоторые имена файлов в соответствии с Windows 7, который должен быть переведен в в базу данных MySQL (UTF-8) с Ruby on Rails.
Имя файла в качестве примера включает "íéó" в некоторое кодирование файловой системы Windows 7.
Я попробовал много комбинаций gsub и ActiveSupport:: Многобайтовый:: Символы.
Спасибо за справку
Я использую Windows уже много лет, начиная с Windows 3.1 и Windows NT 4.0, но я до сих пор не совсем понимаю, как Windows обрабатывает кодировку имен файлов. И я использую MRI и YARV в Windows в течение нескольких лет, и я до сих пор не понимаю, как они обрабатывают кодировки файлов в Windows.
Я делаю знаю, что есть некоторые проблемы с именами файлов Unicode в Windows, которые будут исправлены в версии 1.9.2. Однако я не знаю, действительно ли это проблема, с которой вы столкнулись, или в вашем коде просто ошибка.
Вы пробовали вызвать WideCharacterToMultiByte , указав CP_UTF8? Это нормальный способ преобразования из UCS2 в UTF8 в Windows.
Если вы используете Notepad ++, у вас есть возможность конвертировать файл. http://notepad-plus.sourceforge.net
Он находится в пункте меню: кодировка.