Wpis z mikrobloga

Robię pewien projekt na #esp8266 i #websocket
Serwer jest postawiony na nodej.js i socket.io

Nigdy nie pisałem w C++, i natknąłem się na taki problem.
Dostaję na esp wiadomość w takiej formie(fotka poniżej), i potrzebuję to rozdzielić na dwie zmienne. Na grafice zaznaczyłem o co chodzi. Do parsowania JSONa mam już bibliotekę. Myślałem nad RegExpami, ale może jest jakieś inne rozwiązanie. Ktoś coś? ()


#programowanie
digitallord - Robię pewien projekt na #esp8266 i #websocket
Serwer jest postawiony n...

źródło: comment_LTs0Fw2s1U1ycypnA59tHaF7XJ4DO4kW.jpg

Pobierz
  • 14
  • Odpowiedz
@GotoFinal: @sokytsinolop:
Kurde. Niestety za pomocą tej biblioteki nie idzie tego sparsować.

Coś takiego wchodzi normalnie:

{"hello":"world"}
Ale tak już nie

{["news",{"hello":"world"}]}
___

@sokytsinolop : ale ogólnie to inaczej bym pakował te dane :)


Właśnie problem w tym że z poziomu socket.io nie mam chyba za bardzo możliwości zmiany sposobu pakowania tego ;/
  • Odpowiedz
@GotoFinal: Problem w tym, że to jedyna biblioteka pod PlatformIO ;/
Ogarne to inaczej. Powiedz mi tylko jak z tego: " 42[{"color":"#000080"}] " w c++ najłatwiej usunąć trzy pierwsze i jeden ostatni znak.

erase zwraca:

'class String' has no member named 'erase'
  • Odpowiedz
@digitallord: nie wiem, zerknij do dokumentacji stringa w cpp :P ja tam prawie nic w cpp nie piszę więc nie znam takich rzeczy na pamięc, ale pewnie da się jakoś podzielić po indexie, ewentualnie ręcznie w pętli przekopiować znaki.
  • Odpowiedz