Почему эта проблема с парсингом Arduino sscanf JSON? - PullRequest
0 голосов
/ 29 февраля 2020

Я пытаюсь разобрать эту JSON строку:

{"FN": "142", "SName": "stil.mp3", "InPlaylist1": "1", "InPlaylist2" : "1", "ошибка": 0} Я использую этот оператор sscan:

'RetScanf = sscanf (OneJsonStr, "{\" FN \ ": \"% d \ ", \" SName \ " : \ "% [^ \"], \ "InPlaylist1 \": \ "% d \", \ "InPlaylist2 \": \ "% d \", \ "error \":% d} ", & Parameter1_FNo, Parameter2_FName , InP1, InP2, & err); '

, но анализирует только два первых параметра "FN" и "SName". есть идеи, что я делаю не так?

спасибо заранее бр. Allan

1 Ответ

0 голосов
/ 02 марта 2020

В вашем формате sscanf () при совпадении со строкой SName вы никогда не пытаетесь найти конечную двойную кавычку.

  ,\"SName\":\"%[^\"]\",

Кроме того, поскольку формат говорит, что InP1 / 2 являются целыми числами, вы должны передать их адреса (при условии, что они еще не указатели).

...