11 个版本 (5 个稳定版)

1.0.4 2023年8月29日
1.0.3 2023年4月4日
1.0.2 2023年2月24日
0.1.5 2023年2月1日
0.1.1 2023年1月31日

#145 in 配置

每月 29 次下载

MIT/Apache

9KB
133

iii

介绍

简单的配置库,比 .ini 更简单

配置文件格式

default.iii
c1 = value
#2222
c2 = 233
c3 = ccc3
c5 = 5c
创建新的配置文件
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")
};

读取配置文件并保存

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")
    };
};

按键读取值

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);
    }
};

保存配置文件

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")
};

其他

如果要读取数值类型,例如

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);
}

无运行时依赖