19 个版本 (8 个破坏性版本)
0.9.2 | 2022年1月2日 |
---|---|
0.8.0 | 2021年10月23日 |
0.7.0 | 2021年7月29日 |
0.1.6 | 2021年2月21日 |
#1031 in 数据结构
每月52次 下载
用于 contack_vcard
105KB
2K SLoC
Contack
Contack 是一个 Rust 联系人库。它并没有严格遵循 RFC,而是为了使用方便而放弃了一些兼容性。例如,它不能表达任意数量的职位角色,而是只提供 1 个选项,这使得使用起来更加简单。
使用 read_write
功能,你可以对 VCard 实现原生的序列化和反序列化支持。这是通过以下方式实现的:
use contack::Contact;
use contack::read_write::vcard::VCard;
use std::fs::File;
use std::io::prelude::*;
use std::error::Error;
fn main() -> Result<(), Box<dyn Error>> {
// Load a VCard file
let mut vcard = String::new();
File::open("my_card.vcard")?.read_to_string(&mut vcard)?;
// Serialise it
let vcard: VCard = vcard.parse()?;
// Convert it to a contact
let mut contact: Contact = vcard.try_into()?;
// Make some changes
contact.role = Some(String::from("Being a handy example."));
// Convert it to a VCard representation.
let vcard: VCard = contact.into();
// Print it to the stdout
println!("{}", vcard.to_string());
Ok(())
}
它还支持以下外部库:
依赖项
~0.5–7MB
~141K SLoC