标签: rust
我有一个通用函数,需要将(非ASCII)字节写入io::Write编写器。
io::Write
可靠地写出io::Write特征提供的单个字节的最短方法是AFAIK writer.write_all(&[0])?。在很多地方写这个有点长,语法上很吵。
writer.write_all(&[0])?
Rust的stdlib是否有一个宏或扩展特征,其便捷方法写得更短?
答案 0 :(得分:4)
不是我知道的。但几乎无处不在的byteorder箱提供write_u8。虽然它不受机器的字节顺序的影响,但它是为了完整而包含的。
byteorder
write_u8
use byteorder::WriteBytesExt; writer.write_u8(0)?;
如果您打算经常使用此方法,最好将编写器包装在缓冲的编写器(如BufWriter)周围。
BufWriter