2015-02-09 6 views
-1

Я использую команду (powershell qwinsta) на окнах os, которая возвращает активные сеансы. Вывод содержит китайские символы (для имени пользователя). Я должен проверить, что китайское имя пользователя. Но как я могу обработать это китайское имя пользователя? Если я пишу вывод на консоль, он отображает вопросительные знаки, если я перенаправляю вывод (результат) в текстовый файл, затем также записывает вопросительные знаки в файл (для китайских символов). Как справиться с этим?Обработка вывода, содержащего китайские символы

ответ

0

Одним из вариантов является изменение языка, используемого для программ, отличных от Юникода, на китайский. В Windows 7 перейдите в раздел «Панель управления», «Регион и язык», «Администрирование», «Изменить язык системы» и измените его на соответствующую китайскую настройку. Перезагрузитесь, и консоль поддержит китайских иероглифов.

Другой вариант, чтобы перенаправить вывод в файл в Powershell, который записывает файл в UTF-16:

C:\>powershell 
Windows PowerShell 
Copyright (C) 2009 Microsoft Corporation. All rights reserved. 

PS C:\> qwinsta > out.txt 
PS C:\> notepad out.txt 
+0

Первый вариант не подходит в моем случае, так, я не пробовал. Я попробовал второй случай, но он не работает. – user1423015

+0

@ user1423015, я просто побежал из powershell 'qwinsta> out.txt', и выходной файл был по умолчанию закодирован в UTF-16. Просто откройте файл с помощью Блокнота, и он должен правильно отобразить содержимое. Ваш шрифт консоли по умолчанию, вероятно, не поддерживает китайский язык. –

+0

Моя консоль поддерживает Lucida Console, Consolas и Raster Fonts. Я пробовал все это, но не повезло. Какой шрифт консоли вы использовали? Как вы это поняли? – user1423015