(rust) quick serde/json tryout

This commit is contained in:
scbj
2025-07-04 14:52:37 +02:00
parent b86e403814
commit b02682ab70
2 changed files with 30 additions and 17 deletions
+27 -15
View File
@@ -1,24 +1,36 @@
#![allow(dead_code, unused)]
use chrono::{DateTime, Local};
use tokio::{
fs,
};
use chrono::{DateTime, Local, Utc};
use dirs::config_dir;
use serde::{self, Deserialize, Serialize};
use serde_json;
const BLOCK_SIZE: usize = 1024;
const TIMEOUT_LIMIT: usize = 32;
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct TestStruct {
name: String,
id: u128,
time: DateTime<Utc>,
pos: SubStruct,
}
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let mut interfaces = fs::read_dir("/sys/class/net").await?;
#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct SubStruct {
x: i32,
y: i32,
}
while let Ok(Some(interface)) = interfaces.next_entry().await {
let if_name = interface.file_name().into_string().unwrap();
if !(if_name == "lo") && !if_name.contains("loop") {
println!("name: {}", if_name);
}
}
fn main() -> anyhow::Result<()> {
let test = TestStruct {
name: "ronald yellowegger".to_owned(),
id: 029854u128,
time: chrono::Utc::now(),
pos: SubStruct { x: 8, y: -3 },
};
let json = serde_json::to_string(&test)?;
println!("json = \\");
println!("{}", json);
Ok(())
}