Section courante

A propos

Section administrative du site

include_bytes

Inclus les octets
Rust

Syntaxe

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

Description

Cette macro permet d'inclure un fichier externe sous forme de référence à un tableau d'octets (&'static [u8]), utile pour intégrer des ressources binaires.

Permet d'inclure un fichier comme référence à un tableau d'octets.

Le fichier est localisé par rapport au fichier courant (de la même manière que les modules). Le chemin fourni est interprété de manière spécifique à la plateforme lors de la compilation. Ainsi, par exemple, une invocation avec un chemin Windows contenant des barres obliques inverses \ ne compilerait pas correctement sous Unix.

Cette macro génère une expression de type &'static [u8; N], qui correspond au contenu du fichier.

Exemples

Supposons qu'il y ait deux fichiers dans le même répertoire avec le contenu suivant (fichier 'spanish.in') :

  1. adiós

Fichier 'main.rs' :

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

La compilation de « main.rs » et l'exécution du binaire résultant afficheront « adiós ».



Dernière mise à jour : Mardi, le 5 Août 2025