当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust include_bytes用法及代码示例


本文简要介绍rust语言中 Macro std::include_bytes 的用法。

用法

macro_rules! include_bytes {
    ($file : expr $(,) ?) => { ... };
}

包含一个文件作为对字节数组的引用。

该文件相对于当前文件定位(类似于如何找到模块)。提供的路径在编译时以特定于平台的方式进行解释。因此,例如,使用包含反斜杠 \ 的 Windows 路径的调用将无法在 Unix 上正确编译。

这个宏将产生一个&'static [u8; N] 类型的表达式,它是文件的内容。

例子

假设同一目录下有两个文件,内容如下:

文件'spanish.in':

adiós

文件'main.rs':

fn main() {
    let bytes = include_bytes!("spanish.in");
    assert_eq!(bytes, b"adi\xc3\xb3s\n");
    print!("{}", String::from_utf8_lossy(bytes));
}

编译'main.rs' 并运行生成的二进制文件将打印“adiós”。

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Macro std::include_bytes。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。