Macro core::include_bytes

1.0.0 · source ·
macro_rules! include_bytes {
    ($file:expr $(,)?) => { ... };
}
Expand description

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

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

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

Examples

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

文件 ‘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));
}
Run

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