/
auroraos
/
mirror_libpostal
Обзор
Документация
Войти
/
auroraos
/
mirror_libpostal
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
master
src/json_encode.c
41 строка
1 KB
Al
[api] Simple JSON encoding for strings, UTF-8 rather than Unicode
17 дек 2015, 20:25
17 дек 2015, 20:25
41ea105
Код
Авторство
О чём код?
#include "json_encode.h" char *json_encode_string(char *str) { char *ptr = str; char_array *json_encoded = char_array_new_size(strlen(str) + 2); char_array_push(json_encoded, '"'); while (*ptr) { char ch = *ptr; switch (ch) { case '\\': char_array_append(json_encoded, "\\\\"); break; case '"': char_array_append(json_encoded, "\\\""); break; case '\n': char_array_append(json_encoded, "\\n"); break; case '\r': char_array_append(json_encoded, "\\r"); break; case '\t': char_array_append(json_encoded, "\\t"); break; case '\b': char_array_append(json_encoded, "\\\b"); break; case '\f': char_array_append(json_encoded, "\\\f"); break; default: char_array_push(json_encoded, ch); } ptr++; } char_array_push(json_encoded, '"'); char_array_terminate(json_encoded); return char_array_to_string(json_encoded); }