Разобрать строку json, предоставленную в качестве входного параметра для exe C # - PullRequest
0 голосов
/ 17 сентября 2018

Привет, у меня есть приложение, которое мне нужно выполнить из команды запуска:

D:\MyApplication.exe {\"mydllpath\":\"D:\\dll\",\"FilePath\":\"D:\\Input\\abc.doc\", \"Attribute\":\"word\"}

Однако я не могу извлечь значения из «mydllpath», «FilePath» и «Attribute», при синтаксическом анализе отображаются ошибки.

ошибка: неожиданный конец содержимого при загрузке JObject. Путь 'mydllpath', строка 3, позиция 0. код:

foreach (string arg in args)
{
    var x = JObject.Parse(arg);

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 17 сентября 2018

Если экранировать JSON, вам нужно заключить его в строку

D:\MyApplication.exe "{\"mydllpath\":\"D:\dll\",\"FilePath\":\"D:\Input\abc.doc\", \"Attribute\":\"word\"}"

, которая будет получена в коде как

{"mydllpath":"D:\dll", "FilePath":"D:\Input\abc.doc", "Attribute":"word"}

и разрешить правильный синтаксический анализ.

var json = args[0];
var x = JObject.Parse(json);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...