|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Не получается перенаправление Clipboard -> STDOUT и STDIN -> File в UTF-8 кодировке |
|
|
Любой язык - [решено] Не получается перенаправление Clipboard -> STDOUT и STDIN -> File в UTF-8 кодировке
|
Новый участник Сообщения: 8 |
Добрый вечер, уважаемые форумчане! Есть файл out.txt, сохраненный в кодировке 65001 (UTF-8) через AkelPad. При попытке выполнить
Текст в консоль выводится нормально. А при выполнении файл out2.txt при открытии AkelPad'ом в строке состояния определяется как 1251 (ANSI - кириллица). Как сделать, чтобы выходной файл out2.txt был в той же кодировке, что и входной? В 1251 я работал с буфером обмена при помощи getclip.exe. Но в связи с тем, что он не поддерживает UTF-8, в консольное окно ничего не выводят. Хотелось бы найти достойную замену getclip. Попробовал nclip, но при chcp 65001 он выводит в консоль квадратики и портит кодировку у символа ö (cmd.jpg): c:\nncron>chcp 65001 && nclip -o | c:\nncron\GnuWin32\bin\iconv.exe Active code page: 65001 <tr xmlns="http://www.w3.org/1999/xhtml"><td align="left" nowrap=""><small>��������</small></td></tr> <tr xmlns="http://www.w3.org/1999/xhtml"><td><select multiple="multiple" class="or done chosen" style="width: 236px; display: none;" id="props_manufilter" name="props_manufilter"> <option value="">���</option> <option value="13562">AEG</option> <option value="13564">Bomann</option> <option value="13565">Bosch</option> <option value="14021">Campingaz</option> <option value="14098">Char-Broil</option> <option value="13382">Clatronic</option> <option value="13581">Cloer</option> <option value="14045">Cuisinart</option> <option value="13582">DeLonghi</option> <option value="13849">DS Produkte</option> <option value="13833">Efbe Schott</option> <option value="11090">Electrolux</option> <option value="10404">Grundig</option> <option value="13568">Krups</option> <option value="14028">Landmann</option> <option value="14016">Lotus Grill</option> <option value="12139">Medion</option> <option value="13684">Petra</option> <option value="10213">Philips</option> <option value="13609">Rommelsbacher</option> <option value="13881">Rosle</option> <option value="13698">Russell Hobbs</option> <option value="13836">Salco</option> <option value="13611">Severin</option> <option value="13742">Siemens</option> <option value="13667">Steba</option> <option value="13715">Suntec</option> <option value="13572">Tefal</option> <option value="10315">Thomson</option> <option value="13573">Unold</option> <option value="10184">Verschiedene</option> </select></td></tr> - то же самое - 1251 (ANSI - кириллица), но при этом AkelPad в отличие от cmd, видит русские символы. Так как же добиться, чтобы из буфера обмена передавался Unicode в окно командной строки? Я пока нашел такой способ: вставкой в окно cmd через Right MB. Шрифт в cmd выбран "Lucida console". c:\nncron>chcp Active code page: 65001 c:\nncron><option value="13881">Rösle</option> The syntax of the command is incorrect. c:\nncron>chcp 1251 Текущая кодовая страница: 1251 c:\nncron><option value="13881">Rösle</option> Ошибка в синтаксисе команды. ![]() Но мне надо, чтобы это делало какое-либо консольное приложение для работы с буфером обмена. Как это сделать? |
|
Отправлено: 21:23, 28-06-2015 |
Новый участник Сообщения: 8
|
Профиль | Сайт | Отправить PM | Цитировать Вот еще 2 файла out.txt и out2.txt
|
------- Последний раз редактировалось x_seed@vk, 28-06-2015 в 21:37. Причина: не прикрепил файлы Отправлено: 21:35, 28-06-2015 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1758
|
|
Последний раз редактировалось Foreigner, 28-06-2015 в 22:47. Отправлено: 22:30, 28-06-2015 | #3 |
Новый участник Сообщения: 8
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Foreigner:
c:\nncron>chcp 65001 && cat out.txt Active code page: 65001 п»ї<tr xmlns="http://www.w3.org/1999/xhtml"><td align="left" nowrap=""><small>водитель</small></td></tr> <tr xmlns="http://www.w3.org/1999/xhtml"><td><select multiple="multiple" class="or done chosen" style="width: 236px; display: none;" id="props_manufilter" name="props_manufilter"> <option value="">РІСЃРµ</option> <option value="13562">AEG</option> <option value="13564">Bomann</option> <option value="13565">Bosch</option> <option value="14021">Campingaz</option> <option value="14098">Char-Broil</option> <option value="13382">Clatronic</option> <option value="13581">Cloer</option> <option value="14045">Cuisinart</option> <option value="13582">DeLonghi</option> <option value="13849">DS Produkte</option> <option value="13833">Efbe Schott</option> <option value="11090">Electrolux</option> <option value="10404">Grundig</option> <option value="13568">Krups</option> <option value="14028">Landmann</option> <option value="14016">Lotus Grill</option> <option value="12139">Medion</option> <option value="13684">Petra</option> <option value="10213">Philips</option> <option value="13609">Rommelsbacher</option> <option value="13881">RГ¶sle</option> <option value="13698">Russell Hobbs</option> <option value="13836">Salco</option> <option value="13611">Severin</option> <option value="13742">Siemens</option> <option value="13667">Steba</option> <option value="13715">Suntec</option> <option value="13572">Tefal</option> <option value="10315">Thomson</option> <option value="13573">Unold</option> <option value="10184">Verschiedene</option> </select></td></tr> Цитата Foreigner:
|
||
Отправлено: 00:20, 30-06-2015 | #4 |
Ветеран Сообщения: 1758
|
|
|
Отправлено: 08:40, 30-06-2015 | #5 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать |
Отправлено: 09:00, 30-06-2015 | #6 |
Ветеран Сообщения: 1758
|
|
Отправлено: 09:31, 30-06-2015 | #7 |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать Начиная с 4 версии и выше.
|
Отправлено: 09:36, 30-06-2015 | #8 |
Ветеран Сообщения: 1758
|
Kazun, понятно
|
Отправлено: 09:37, 30-06-2015 | #9 |
Новый участник Сообщения: 8
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Kazun:
c:\nnCron>chcp 65001 Active code page: 65001 c:\nnCron>powershell -sta -c "add-type -assembly system.windows.forms; [windows.forms.clipboard]::gettext()" <tr><td nowrap="" align="left"><small>итель</small></td></tr> <tr><td><select name="props_manufilter" id="props_manufilter" style="width: 236 px; display: none;" class="or done chosen" multiple="multiple"> <option value="">все</option> <option value="13562">AEG</option> <option value="13564">Bomann</option> <option value="13565">Bosch</option> <option value="14021">Campingaz</option> <option value="14098">Char-Broil</option> <option value="13382">Clatronic</option> <option value="13581">Cloer</option> <option value="14045">Cuisinart</option> <option value="13582">DeLonghi</option> <option value="13849">DS Produkte</option> <option value="13833">Efbe Schott</option> <option value="11090">Electrolux</option> <option value="10404">Grundig</option> <option value="13568">Krups</option> <option value="14028">Landmann</option> <option value="14016">Lotus Grill</option> <option value="12139">Medion</option> <option value="13684">Petra</option> <option value="10213">Philips</option> <option value="13609">Rommelsbacher</option> <option value="13881">Rösle</option> <option value="13698">Russell Hobbs</option> <option value="13836">Salco</option> <option value="13611">Severin</option> <option value="13742">Siemens</option> <option value="13667">Steba</option> <option value="13715">Suntec</option> <option value="13572">Tefal</option> <option value="10315">Thomson</option> <option value="13573">Unold</option> <option value="10184">Verschiedene</option> </select></td></tr> Видать, pclip, nclip, getclip, clop и иже с ними делались исключительно под определенную кодовую страницу и не предназначены для работы с Unicode. А вот PowerShell с его gettext() способен это сделать. Проблему с кодировкой при выводе в файл решил, по-видимому, при открытии файла AkelPad пытается ее распознать и у него не всегда это корректно получается, особенно, когда в файле байты разных алфавитов и пытается подобрать что-то свое. При установке кодировки в Akelpad вручную (ПКМ по строке состояния) все прекрасно распознается. |
|
------- Отправлено: 03:15, 01-07-2015 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Не отображаются нормально в mc-light тексты в utf кодировке | Dezz | Программное обеспечение Linux и FreeBSD | 9 | 10-05-2020 22:22 | |
[решено] Создание и запись в файл в кодировке 1200 (UTF 16 LE) | eus_deus | AutoIt | 5 | 08-09-2013 00:01 | |
Кодирование и декодирование UTF-8,UTF-16? | Killer_13 | Хочу все знать | 5 | 10-02-2012 00:00 | |
VBS/WSH/JS - [решено] Как создать файл в кодировке UTF-8 с помощью VBScript? | Zeron | Скриптовые языки администрирования Windows | 2 | 30-05-2011 03:50 | |
Запуск доп.программы по условию в консоли(STDOUT) первой. | Dobrinia | AutoIt | 3 | 18-01-2011 12:31 |
|