как сохранить скрипт в кодировке oem 866

Не корректно отображается Русский текст в CMD? Решение есть!

как сохранить скрипт в кодировке oem 866как сохранить скрипт в кодировке oem 866как сохранить скрипт в кодировке oem 866как сохранить скрипт в кодировке oem 866 как сохранить скрипт в кодировке oem 866

Как корректно отобразить Русский текст в CMD. Проблемы с кодировкой могут возникнуть, например, при выполнении Bat файла, когда нужно вывести в консоль русский текст и при других обстоятельствах, о которых речь пойдёт далее.

Рассмотрим пример: когда нужно вывести в консоль Русский текст, скажем «Примет мир». Для этого создадим Bat файл с именем «1.bat». Используйте для этого обычный Блокнот Windows (Notepad.exe) Запишем в него следующие строки!

Для тех, кто не понял или не в курсе, строчки «echo.» я добавил специально, что бы были отступы, от строки «Примет мир»

Теперь запускаем файл 1.bat и результат будет такого вида.

как сохранить скрипт в кодировке oem 866

Как видим проблема с кодировкой в cmd на лицо. И произошло это по следующей причине.

Стандартный блокнот Windows сохранил Bat файл в кодировке «1251» а консоль вывела его в кодировки «866». Вот от сюда все проблемы!

Решения проблемы с кодировкой в CMD. 1 Способ.

Для решения проблемы нужно просто использовать текстовой редактор, с помощью которого можно сохранить текст в кодировке «866». Для этих целей прекрасно подходит «Notepad++» (Ссылку для загрузки Вы можете найти в моём Twitter-e).

Скачиваем и устанавливаем на свой компьютер «Notepad++».

После запуска «Notepad++» запишете в документ те же строки, которые мы уже ранние записывали в стандартный блокнот.

Теперь осталось сохранить документ с именем «2.bat» в правильной кодировке. Для этого идём в меню «Кодировки > Кодировки > Кириллица > OEM-866»

как сохранить скрипт в кодировке oem 866

и теперь сохраняем файл с именем «2.bat» и запускаем его! Поле запуска результат на лицо.

как сохранить скрипт в кодировке oem 866

Как видим, текст на Русском в CMD отобразился, как положено.

Решения проблемы с кодировкой в CMD. 2 Способ.

Теперь рассмотрим ещё одну ситуацию, когда могут возникнуть проблемы с кодировкой в CMD.

Допустим, ситуация требует сохранить результат выполнения той или иной команды в обычный «TXT» файл. В приделах этого поста возьмём для примера команду «HELP».

Задача : Сохранить справку CMD в файл «HelpCMD.txt. Для этого создайте Bat файл и запишите в него следующие строки.

После выполнения Bat файла в корне диска «C:\» появится файл «HelpCMD.txt» и вместо справки получится вот что:

как сохранить скрипт в кодировке oem 866

Естественно, такой вариант не кому не понравится и что бы сохранить справку в понятном для человека виде, допишите в Bat файл строку.

Теперь содержимое кода будет такое.

После выполнения «Батника» результат будет такой:

как сохранить скрипт в кодировке oem 866

Вот так на много лучше, правда?

Пожалуй, на этом я закончу пост. Добавить больше нечего. Если у Вас имеются какие-то соображения по данной теме, буду рад Вашему комментарию к посту.

Дополнительно из комментариев то Garric

[HKEY_CLASSES_ROOT\.bat\ShellNew]
«FileName»=»BATНастроенная кодировка.bat»
——
Выполняем.
——
Топаем в %SystemRoot%\SHELLNEW
Создаём там файл «BATНастроенная кодировка.bat»
Открываем в Notepad++
Вводим любой текст. (нужно!) Сохраняемся.
Удаляем текст. Меняем кодировку как сказано в статье. Сохраняемся.
———-
Щёлкаем правой кнопкой мыши по Рабочему столу. Нажимаем «Создать» — «Пакетный файл Windows».
Переименовываем. Открываем в Notepad++. Пишем батник.
В дальнейшем при работе с файлом не нажимаем ничего кроме как просто «Сохранить». Никаких «Сохранить как».

Источник

В какой кодировке нужно сохранить bat, чтобы использовать символ ×

Возникла небольшая трудность:

В батнике необходимо использовать символ ×, но при сохранении в кодировках 1251 или 866 этот символ теряется.
При сохранении батника в кодировке, к примеру, 65001 (UTF-8) символ × сохраняется, но батник не запускается.

MySQL. Какой компонент нужно использовать чтобы работать с бд?
Начинаю работать с mysql на Delphi. Скажите подалуйста.. 1) какую библиотеку использовать? 2).

Какой тип нужно использовать в ADO, чтобы передать SQL Server длинный текст?
Ув. пипл. Необходимо передать в хр. процедуру SQL Server 2000 в качестве параметра длинный текст.

завидую я вам, ребята,
мне бы тоже хотелось использовать крестик ( не отказался бы и от нолика ),
но задачи подходящей нет.

я так понимаю, что в новой компьютерной программе «Уиндус 10»
тоже поддержки Юникода нет в консоли? ( заканчивался 15-й год 21-го века. )

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

В командной строке работает прекрасно, а в батнике не сохраняется.

Добавлено через 1 минуту
В тегах символ портится

Решение

Решение

vavun, пакетный файл с кодом

2>nul& @cls& >nul chcp 65001

Теги для цитаты, которые я применил для оформления кода, чтобы сохранить символы «×», «съели» начальный пробелкак сохранить скрипт в кодировке oem 866.

Теперь, чтобы этот пробел не терялся, вставил перед ним «!» (убирать «!» из скопированного кода необязательно, да и строка кода выглядит нагляднее):

! 2>nul& @cls& >nul chcp 65001

Далее продолжил экспериментировать с кодом. Решил проверить вывод ошибки в случае, когда папка уже существует, и дописал в конец кода «pause»:

! 2>nul& @cls& >nul chcp 65001

И, о ужас, обнаружил, что не только не выводится ошибка, но и пауза не срабатывает, то есть пакетный файл закрывается сразу после этой ошибки (подчёркиваю, даже не выводя сообщения сообщения об ошибке).

Перенаправил вывод ошибки в «NUL»:

! 2>nul& @cls& >nul chcp 65001

Пакетный файл стал отрабатывать до конца:

Но остались два вопроса.

1) Почему это происходит?

2) Как всё-таки вывести ошибку?

Вероятно, ошибка выводится в кодировке, отличной от «65001», отчего и происходит сбой.

Заменил «NUL» на «CON»:

! 2>nul& @cls& >nul chcp 65001

Далее озадачился ещё одним вопросом: что делать, если код будет довольно большим, и будет трудно сразу определить, для каких команд писать «2>nul» или «2>con» (что ещё и сильно трудозатратно)?

Вариант 1: запускать пакетный файл из командной строки или другого пакетного файла:

Работает, но как-то «не наш метод».

Вариант 2: заключить весь код в скобки:

! 2>nul& @cls& >nul chcp 65001

Тоже работает, но пока в коде нет переменных. Ведь если в начале имеющегося кода нет команды «SETLOCAL ENABLEDELAYEDEXPANSION», то код надо уже переписывать для условий отложенного расширения.

Вариант 3: вызывать код как процедуру:

! 2>nul& @cls& >nul chcp 65001

2>con call :sub& exit/b

Придумал и четвёртый, оригинальный, вариант.

Открываем третий глаз. В начале кода открываем поток данных с дескриптором «3», в который будет перенаправляться весь последующий стандартный поток ошибок (с дескриптором «2»), а сам третий поток будет перенаправляться по желанию либо в консоль («CON»), либо в пустое устройство («NUL»):

! 2>nul& @ 2>&3 3>con cls& >nul chcp 65001

ComSpec, пока не очень понятно, но спасибо за примеры )

— в кодировке 65001 без bom все отлично тоже создается, с bom тоже создается превосходно, но ругается, но создается.

Добавлено через 1 минуту
vavun,

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Какой триггер нужно использовать. чтобы фон менялся пока не нажмется другая кнопка?
Какой тригер нужно использовать чтобы фон менялся пока не нажмется другая кнопка? видел только.

как сохранить скрипт в кодировке oem 866В какой кодировке сохранить текстовый файл для последующей загрузки в Excel
Здравствуйте. Такая задача. Я, из C# сохраняю некоторые данные в текстовом файле, для Exel. Но.

В какой кодировке записать файл, чтобы через обычный блокнот текст был нечитаем
Есть две программы написаные в vb. В первой программе richtextbox и button. Во второй программе.

Источник

Перекодировка из OEM-866 в Windows-1251

dp0\log.txt 2>>&1
понятно после завершения батника в этом логе досовские крокозябры
поэтому в конце батника пишу перекодировку этого лога так:

он создает этот второй лог но записывает туда только одну первую строку
как заставить его дочитать до конца, поигралась с параметром delims тоже не получилоськак сохранить скрипт в кодировке oem 866

Добавлено через 14 минут
ответ нашла сама, как обычно как сохранить скрипт в кодировке oem 866

только вот батник у меня большой, лог большой, приходится еще минут 10 ждать когда он перекодит, может есть у кого мысли как заставить его перекодировать сразу из потока вывода результов и записать уже в log.txt в кодировке chcp 1251 что-то вместо этого 1>>%

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Перекодировка текста из OEM 866 в UTF-8 или Ansi с загрузкой в Memo
Всем привет! Помогите пожалуйста. У меня в исходниках есть текстовые файлы в кодировке OEM 866.

866-MS-DOS to 1251-MS-Windows
«Программа предназначена для перекодировки текстовых файлов из формата кодовой таблицы 866-MS-DOS в.

Перекодировка из КОИ-8 в Windows 1251
Разработать программу перекодировки текстовых файлов из кодового набора КОИ-8 в кодовый набор.

Вы неверно толкуете. Каждый символ после = является самостоятельным. Так нельзя писать.

Там по ссылке Charles Kludge, в п.3. при желании есть ускоренный аналог Вашего варианта перекодировщика.

Учтите, что строки, которые начинаются со знака ; будут пропускаться.
Для этого нужно добавить пустой модификатор eol=

Добавлено через 8 часов 56 минут
Или так:

Из «неправильной» переменной в файл
@echo off
set text=╧ЁштхЄ шч Ёы√ър.
(
for /f «tokens=* delims= » %%a in («%text%») do call :convert %%a
)>»%USERPROFILE%\Desktop\Translation.txt»
pause
goto :eof
:convert
::chcp 866>nul
set /p=%* nul
goto :eof

Добавлено через 3 минуты
Наверное, это тот случай когда нужно выкладывать более полный код. Сам батник изначально в кодировке 866
======================================================
:: Оставь эту строку, как распознаватель для открытия файла в редакторах
chcp 866
@echo off
set text=╧ЁштхЄ шч Ёы√ър.
(
for /f «tokens=* delims= » %%a in («%text%») do call :convert %%a
)>»%USERPROFILE%\Desktop\Translation.txt»
pause
goto :eof
:convert
::chcp 866>nul
set /p=%* nul
goto :eof

Источник

Перекодировка текста (сборник кодов для различных кодовых страниц)

Если батник сохранять в кодировке 866

Если батник сохранять в кодировке 1251

Если батник сохранять в кодировке 866

Если батник сохранять в кодировке 1251

Названия доступных кодировок можно посмотреть в разделе реестра:
HKEY_CLASSES_ROOT\Mime\Database\Charset

Демо-набор есть в архиве.
Спасибо за внимание. Надеюсь, окажется Вам полезным.

Вложения

как сохранить скрипт в кодировке oem 866Codepages.zip (5.7 Кб, 160 просмотров)

Переключение кодовых страниц в windows?
Некоторая программма принимает (вводит с клавиатуры) символы в обычной русской кодировке, после.

Переключение кодовых страниц в Windows?
Некоторая программма под виндами принимает (вводит с клавиатуры) символы в обычной русской.

Сколько различных кодовых слов может использовать Игорь
Помогите, пожалуйста, девушке, решить задачу по комбинаторике. Пересмотрела кучу решений подобных.

Перекодировка текста для вывода в окне
Здравствуйте. Помогите реализовать перекодировку текстового файла с помощью функций CharToOem() и.

Мой вариант универсального (насколько это возможно для пакетного файла) перекодировщика.

В отличие от ранее предлагавшихся перекодировщиков, основанных на построчном разборе текста в цикле командой «for«, данный код абсолютно устойчив к специальным символам, встречающимся в тексте, и полностью сохраняет форматирование текста, включая пустые строки. Код проверялся на всех символах английской и русской раскладки клавиатуры. Максимальная длина обрабатываемых строк может достигать 4091 символа.

Замечания и предложения приветствуютсякак сохранить скрипт в кодировке oem 866!

Добавлено через 8 минут
+ вспомнил, что ты помогал в личку. Пусть здесь будет.

Источник

Изменение кодировки текстового файла

здравствуйте, в своих записях имею пару кодов
для перекодировки файлов, а как сделать из ANSI > UTF 8? спасибо

Изменение формата ячеек при открытии текстового файла
Скажите, пожалуйста, как записать макрос, чтобы при открытии текстового файла, у столбцов был.

Определение кодировки текстового файла
Нужно написать программу на СИ, которая определяет кодировку текстового файла. Помогите, весь инет.

как сохранить скрипт в кодировке oem 866Проверка кодировки текстового файла
Скажите пожалуйста можно ли проверить кодировку текстового файла?? Если не «ANSI», то пересохранить.

Наверняка есть готовые решения по конвертации кодировок, но я, из интереса, попробовал сделать на VB. В макросе есть ограничения (это всего лишь рабочий набросок для проекта): 1)он конвертирует ascii коды и буквы кириллицы, остальные символы из расширенной таблицы не конвертирует, 2) при конвертации файла не проверяются региональные настройки кодовой страницы, а просто тупо идет преобразование из windows-1251 в utf-8.
При вызове процедуры указываете полный путь текстового файла в кодировке 1251 (или ansi) и результат будет в той же папке.

Добавлено через 25 минут
Да, и еще, в ворде имеются встроенные инструменты по изменению кодировки, поищите, вполне возможно что и найдете. Я сейчас сделать это не могу.

Добавлено через 19 секунд
Да, и еще, в ворде имеются встроенные инструменты по изменению кодировки, поищите, вполне возможно что и найдете. Я сейчас сделать это не могу.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *