Skip to content

Commit 88986fd

Browse files
authored
Add files via upload
1 parent 8cef9d4 commit 88986fd

File tree

3 files changed

+91
-0
lines changed

3 files changed

+91
-0
lines changed

jsonencoder.cpp

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
#include "jsonencoder.h"
2+
3+
/**
4+
* @brief Converts a JSON string into URL encoded string.
5+
*
6+
* @param jsonString The JSON format string.
7+
* @return URL encoded string.
8+
*/
9+
String encode(String jsonString){
10+
for(int i=0; i<jsonString.length(); i++){
11+
switch(jsonString.charAt(i)){
12+
case ' ': jsonString[i]='+';
13+
break;
14+
case ':': jsonString[i]='A';
15+
break;
16+
case '{': jsonString[i]='B';
17+
break;
18+
case '}': jsonString[i]='C';
19+
break;
20+
case '"': jsonString[i]='D';
21+
break;
22+
case ',': jsonString[i]='E';
23+
break;
24+
case '.': jsonString[i]='F';
25+
break;
26+
}
27+
}
28+
return jsonString;
29+
}
30+
31+
/**
32+
* @brief Converts an URL encoded string into JSON string.
33+
*
34+
* @param jsonString The URL encoded string.
35+
* @return JSON format string.
36+
*/
37+
String decode(String codedString){
38+
for(int i=0; i<codedString.length(); i++){
39+
switch(codedString.charAt(i)){
40+
case '+': codedString[i]=' ';
41+
break;
42+
case 'A': codedString[i]=':';
43+
break;
44+
case 'B': codedString[i]='{';
45+
break;
46+
case 'C': codedString[i]='}';
47+
break;
48+
case 'D': codedString[i]='"';
49+
break;
50+
case 'E': codedString[i]=',';
51+
break;
52+
case 'F': codedString[i]='.';
53+
break;
54+
}
55+
}
56+
return codedString;
57+
}

jsonencoder.h

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#ifndef jsonencoder
2+
#define jsonencoder
3+
#include<Arduino.h>
4+
/**
5+
* @brief Converts a JSON string into URL encoded string.
6+
*
7+
* @param jsonString The JSON format string.
8+
* @return URL encoded string.
9+
*/
10+
String encode(String jsonString);
11+
12+
/**
13+
* @brief Converts an URL encoded string into JSON string.
14+
*
15+
* @param jsonString The URL encoded string.
16+
* @return JSON format string.
17+
*/
18+
String decode(String codedString);
19+
20+
#endif

keywords.txt

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
##########################################
2+
# Encode JSON to URL format and vice versa
3+
##########################################
4+
5+
##########################################
6+
# Methods and functions (KEYWORD1)
7+
##########################################
8+
encode KEYWORD1
9+
decode KEYWORD1
10+
11+
##########################################
12+
# Constants (LITERAL1)
13+
##########################################
14+

0 commit comments

Comments
 (0)