11 releases (5 stable)
1.0.4 | Aug 29, 2023 |
---|---|
1.0.3 | Apr 4, 2023 |
1.0.2 | Feb 24, 2023 |
0.1.5 | Feb 1, 2023 |
0.1.1 | Jan 31, 2023 |
#471 in Configuration
29 downloads per month
9KB
133 lines
iii
Introduce
Simple configuration library,Easier than .ini
Config file format
default.iii
c1 = value
#2222
c2 = 233
c3 = ccc3
c5 = 5c
Create new config file
let mut cc = iii::BufData::new();
cc.chgvalue("c1", "value");
cc.chgvalue("c2", 666);
cc.chgvalue("c3", "value3");
if let Ok(_) = cc.save(None){
println!("file write success")
};
Read config file and save
if let Ok(mut cc) = iii::BufData::loadfromiii("default.iii"){
cc.chgvalue("c3", "ccc3");
cc.chgvalue("c5", "5c");
if let Ok(_) = cc.save(None){
println!("file write success")
};
};
Read value by key
if let Ok(cc) = iii::BufData::loadfromiii("default.iii"){
if let Some(v) = cc.getvalue::<String>("c2"){
println!("K:{},V:{}","c2",v);
}
if let Some(v) = cc.getvalue::<String>("c5"){
println!("K:{},V:{}","c5",v);
}
};
Save config file
let mut cc = iii::BufData::new();
cc.chgvalue("c1", "value");
if let Ok(_) = cc.save(None){
println!("file write success")
};
if let Ok(_) = cc.save(Some("file1.iii")){
println!("file write success")
};
Other
If you want to read the numeric type,exp like:
let mut cc = iii::BufData::new();
cc.chgvalue("c2", "33");
cc.chgvalue("c4", true);
if let Ok(number) = cc.getvalue::<u32>("c2"){
println!("number:");
assert!(33==number);
};
if let Ok(var) = cc.getvalue::<bool>("c4"){
println!("bool:");
assert!(true==var);
}