probably worth an option for this
This commit is contained in:
@@ -562,7 +562,7 @@ static int json_object_double_to_json_string(struct json_object* jso,
|
||||
} else {
|
||||
p = strchr(buf, '.');
|
||||
}
|
||||
if (p) {
|
||||
if (p && (flags & JSON_C_TO_STRING_NOZERO)) {
|
||||
/* last useful digit, always keep 1 zero */
|
||||
p++;
|
||||
for (q=p ; *q ; q++) {
|
||||
|
||||
@@ -42,6 +42,10 @@ extern "C" {
|
||||
* for an example of the format.
|
||||
*/
|
||||
#define JSON_C_TO_STRING_PRETTY (1<<1)
|
||||
/**
|
||||
* A flag to drop trailing zero for float values
|
||||
*/
|
||||
#define JSON_C_TO_STRING_NOZERO (1<<2)
|
||||
|
||||
#undef FALSE
|
||||
#define FALSE ((json_bool)0)
|
||||
|
||||
@@ -23,8 +23,9 @@ int main(int argc, char **argv)
|
||||
|
||||
MC_SET_DEBUG(1);
|
||||
|
||||
new_obj = json_tokener_parse("[1.2,3.4,123456.78,5.0]");
|
||||
new_obj = json_tokener_parse("[1.2,3.4,123456.78,5.0,2.3e10]");
|
||||
printf("new_obj.to_string()=%s\n", json_object_to_json_string(new_obj));
|
||||
printf("new_obj.to_string()=%s\n", json_object_to_json_string_ext(new_obj,JSON_C_TO_STRING_NOZERO));
|
||||
json_object_put(new_obj);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user