Получите вывод CMD на определенном языке независимо от языка, установленного в Windows - PullRequest
0 голосов
/ 07 мая 2018

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

Я буду использовать простую команду в качестве примера. Если я наберу команду

date

вывод будет:

Data Corrente: 07/05/2018

Immettere la nuova data: (гг-мм-а-а)

Это потому, что в моей системе установлена ​​Windows Итальянский .

В своем приложении я хотел бы выполнять команды через CMD.exe и анализировать их вывод. Я уже знаю, как это сделать, но проблема в том, что если мое приложение выполняется в неитальянских системах Windows, приложение не будет работать, потому что оно основано на итальянских строках (например, я ищу строку «Data corrente», но если Windows настроена на другие языки, строка не будет найдена).

Мне нужно генерировать выходные данные на фиксированном языке независимо от языка, установленного в системе.

Используя приведенный выше пример, введите команду "date". Я бы хотел получить следующий вывод во ВСЕХ системах, включая итальянские:

Текущая дата: 07/05/2018

Введите новую дату: (гг-мм-а-а)

Спасибо.

1 Ответ

0 голосов
/ 07 мая 2018

Попробуйте это:

Console.Out.WriteLine($"The current date is: {DateTime.Now.ToShortDateString()}");
var currentCulture = Thread.CurrentThread.CurrentCulture;
Console.Out.Write($"Enter the new date: {currentCulture.DateTimeFormat.ShortDatePattern}");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...