]> piware.de Git - learn-rust.git/commitdiff
serde: Write JSON to file
authorMartin Pitt <martin@piware.de>
Sat, 25 Sep 2021 08:20:01 +0000 (10:20 +0200)
committerMartin Pitt <martin@piware.de>
Sat, 25 Sep 2021 08:20:01 +0000 (10:20 +0200)
serde/src/main.rs

index 0c9efe90216132d2a0ff01f57352f24279c3aa07..1357100b79351126faa8f046e27aa378611ff246 100644 (file)
@@ -1,3 +1,4 @@
+use std::fs;
 use serde::{Serialize, Deserialize};
 
 #[derive(Serialize, Deserialize, Debug)]
@@ -29,6 +30,8 @@ fn create_contacts() {
     // FIXME: Use ? and return Result
     let serialized = serde_json::to_string(&contacts).unwrap();
     println!("serialized: {}", serialized);
+    let mut f = fs::File::create("/tmp/contacts.json").unwrap_or_else(|e| panic!("Could not create /tmp/contacts.json: {:?}", e));
+    serde_json::to_writer_pretty(&mut f, &contacts).unwrap_or_else(|e| panic!("Could not serialize contacts: {:?}", e));
 }
 
 fn main() {