Как я преобразовываю кодирование имени файла Windows 7 в UTF-8 для Ruby on Rails?

(Ive посмотрел на другие вопросы - ни один не казался довольно пригодному моей проблемой.)

У меня есть некоторые имена файлов в соответствии с Windows 7, который должен быть переведен в в базу данных MySQL (UTF-8) с Ruby on Rails.

Имя файла в качестве примера включает "íéó" в некоторое кодирование файловой системы Windows 7.

Я попробовал много комбинаций gsub и ActiveSupport:: Многобайтовый:: Символы.

Спасибо за справку

1
задан Reilly Beacom 3 May 2010 в 07:58
поделиться

3 ответа

Я использую Windows уже много лет, начиная с Windows 3.1 и Windows NT 4.0, но я до сих пор не совсем понимаю, как Windows обрабатывает кодировку имен файлов. И я использую MRI и YARV в Windows в течение нескольких лет, и я до сих пор не понимаю, как они обрабатывают кодировки файлов в Windows.

Я делаю знаю, что есть некоторые проблемы с именами файлов Unicode в Windows, которые будут исправлены в версии 1.9.2. Однако я не знаю, действительно ли это проблема, с которой вы столкнулись, или в вашем коде просто ошибка.

0
ответ дан 3 September 2019 в 00:52
поделиться

Вы пробовали вызвать WideCharacterToMultiByte , указав CP_UTF8? Это нормальный способ преобразования из UCS2 в UTF8 в Windows.

3
ответ дан 3 September 2019 в 00:52
поделиться

Если вы используете Notepad ++, у вас есть возможность конвертировать файл. http://notepad-plus.sourceforge.net

Он находится в пункте меню: кодировка.

-1
ответ дан 3 September 2019 в 00:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: