json.cpp 873 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include "JSONParser.h"
  4. using namespace crown;
  5. int main(int argc, char** argv)
  6. {
  7. const char* src = "\"params1\": [1,2,3,4], \"params2\": [5,6,7,8]";
  8. char dst[10][256];
  9. JSONParser* parser = new JSONParser();
  10. json_error error;
  11. JSONToken* tokens;
  12. parser->init();
  13. error = parser->parse(src);
  14. tokens = parser->get_tokens();
  15. for (int i = 0; i < parser->get_tokens_number(); i++)
  16. {
  17. strncpy((char*)dst[i], &src[tokens[i].m_start], tokens[i].m_size);
  18. dst[i][tokens[i].m_size] = '\0';
  19. printf("token[%d]\n", i);
  20. printf("type: %d\n", tokens[i].m_type);
  21. printf("size: %d\n", tokens[i].m_size);
  22. printf("start: %d\n",tokens[i].m_start);
  23. printf("end: %d\n",tokens[i].m_end);
  24. printf("parent: %d\n",tokens[i].m_parent);
  25. printf("string: %s\n", dst[i]);
  26. printf("\n");
  27. }
  28. printf("return: %d\n", error);
  29. return 0;
  30. }