Rust
Rust
JSON: Access Array Values
See more JSON Examples
Demonstrates how to access values in a JSON array.Chilkat Rust Downloads
let json = chilkat::JsonObject::new();
let json_str = "{ \"id\": 1, \"name\": \"A green door\", \"tags\": [\"home\", 22, \"green\"], \"price\": 125 }".to_string();
if json.load(&json_str).is_err() {
println!("{}", json.last_error_text());
return;
}
// Get the "tags" array, which contains "home", 22, "green"
let Ok(tags_array) = json.array_of("tags") else {
println!("tags member not found.");
return;
};
// Get the value at each array index.
// Output will be:
// [0] = home
// [0] as integer = 0
// [1] = 22
// [1] as integer = 22
// [2] = green
// [2] as integer = 0
let array_size = tags_array.size();
for i in 0..array_size {
let s_value = tags_array.string_at(i).unwrap_or_default();
println!("[{}] = {}", i, s_value);
let i_value = tags_array.int_at(i);
println!("[{}] as integer = {}", i, i_value);
}
// Note: The StringAt method returns the value as a string regardless of the type.
// The IntAt method returns the value as an integer. If the value does not convert to
// an integer, then 0 is returned.