macro_rules! include_bytes { ($file:expr) => { ... }; ($file:expr,) => { ... }; }
Includes a file as a reference to a byte array.
The file is located relative to the current file (similarly to how modules are found). The provided path is interpreted in a platform-specific way at compile time. So, for instance, an invocation with a Windows path containing backslashes \
would not compile correctly on Unix.
This macro will yield an expression of type &'static [u8; N]
which is the contents of the file.
Assume there are two files in the same directory with the following contents:
File 'spanish.in':
adiós
File 'main.rs':
fn main() { let bytes = include_bytes!("spanish.in"); assert_eq!(bytes, b"adi\xc3\xb3s\n"); print!("{}", String::from_utf8_lossy(bytes)); }
Compiling 'main.rs' and running the resulting binary will print "adiós".
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/macro.include_bytes.html