2015-07-04 3 views
2

Я хочу напечатать строку на болгарском языке в консоли, используя nodejs. У меня есть index.js файл, который делает:Как напечатать строку utf8 в консоли, используя nodejs

console.log('Текст на български.'); 

Когда я запустить его в консоли с: узел index.js Он печатает только - «??????????» Я использую Webstorm, и я установил параметры кодирования IDE и файла проекта в utf8. Я также пробовал:

Тот же результат. Если я запускаю следующее в nodejs РЕПЛ я получить правильный результат:

console.log('Текст на български.'); 

Который ведет меня к считаю, что причина, я получаю «???????» из-за кодировки файла, но он установлен в utf8. Есть идеи? Вот скриншот из настроек в Webstorm.

Хм теперь, когда я изменил все настройки на UTF8, текст на болгарском языке в моих комментариях изменился на '?????' и это было хорошо до этого. Сокет определенно не прав. Когда я делаю файл index.js из Notepad ++ и устанавливаю кодировку в utf8, у меня проблем нет. Что-то не так с настройками Webstorm.

+0

Вы протестировали его, используя обычную консоль вместо Webstorm? –

+0

Я использую командную строку Windows по умолчанию, а не консоль от Webstorm. Я просто пишу свой код в Webstorm. –

+0

Вы попытались щелкнуть поле «Кодирование по умолчанию» для вашего js-файла и явно установить его в UTF8? Или попробуйте меню 'File'->' File encoding' и измените открытый файл на UTF8, чтобы преобразовать файл? – mscdex

ответ

1

Настройка «Project Encoding» Webstorm, похоже, применима только к вновь добавленным файлам. Судя по вашему скриншоту (см. Нижний правый угол), ваши личные файлы по-прежнему используют Windows-1252. Вам необходимо вручную заставить Webstorm интерпретировать каждый файл как UTF-8.

Либо через выпадающее меню в правом нижнем углу окна, после открытия файла в вопрос:

screen 1

Или через само окно настроек «File кодировок»:

screen 2


Еще одна возможность заключалась бы в том, чтобы напрямую испортить .idea/encodings.xml в вашем проекте, но я не буду вдаваться в подробности там.

+0

Да что сделал. Благодарю. –

0

Если вы используете стандартную командную строку Windows, вам необходимо убедиться, что используются как кодовая страница UTF8 (chcp 65001), так и шрифт Lucida Console вместо Raster Fonts.

После внесения этих изменений текст отображается как раз для меня как в REPL, так и при исполнении из файла.

+0

Я пробовал это, но это не решает проблему. Я не думаю, что проблема связана с настройками в консоли, потому что в этом проекте у меня есть папки на болгарском языке, и они отлично смотрятся в консоли. Только когда я выполняю js-файл. Это должно быть из настроек Webstorm. Я отредактирую свой вопрос и прикрепите изображение из настроек Webstorm. –

Смежные вопросы