Aller au contenu
OneKitly

Une pièce jointe grossit d'un tiers dans l'e-mail

Publié le 07/09/2026 · 4 min de lecture · Outils fichiers

Daniel Okonkwo

Daniel OkonkwoDéveloppeur front-end et rédacteur Tech chez OneKitly

Performance web · Formats de fichiers

Vérifié à partir de 3 sources

Voir le profil
En bref

Le courrier a été conçu pour transporter du texte : un fichier doit donc être réécrit en texte avant de voyager. L'encodage employé est le base64 — trois octets deviennent quatre caractères imprimables, et MIME coupe ensuite le résultat en lignes de 76 caractères terminées par un retour chariot et un saut de ligne. Trois octets pour quatre font un facteur fixe de 1,3333, les coupures de ligne ajoutent 2,6 %, et le total mesuré est de 1,3684 — un fichier de 10 Mio occupe 13,684 Mio du message. À rebours, une limite d'envoi de 25 Mo transporte environ 18,3 Mio de fichiers réels, une limite de 20 Mo environ 14,6 Mio et une limite de 10 Mo environ 7,3 Mio, avant que le corps du message et les en-têtes ne prennent leur part. L'extracteur inverse ici l'encodage et te rend les octets d'origine, octet pour octet : le gonflement n'existe qu'à l'intérieur du message.

Le courrier transporte les fichiers en texte, trois octets écrits en quatre caractères. Une pièce jointe de 10 Mio occupe 13,68 Mio du message — d'où le fait qu'une limite de 25 Mo signifie en réalité environ 18 Mio de fichiers.

Pourquoi un fichier ne peut pas voyager tel quel

Les protocoles du courrier ont été écrits quand une liaison garantissait sept bits par caractère et rien de plus. Un octet de PDF ou de photographie peut prendre l'une de 256 valeurs, dont plusieurs signifient quelque chose pour un serveur de messagerie — un retour chariot isolé, un octet nul, une ligne qui commence par un point. Le base64 contourne tout cela en n'employant que 64 caractères sur lesquels tous les systèmes s'accordent, au prix d'en écrire quatre pour trois octets. Cette arithmétique n'est pas un détail d'implémentation qu'on optimiserait : c'est le prix de la garantie que le fichier arrive identique.

Cela explique aussi pourquoi compresser avant de joindre aide, et pourquoi recompresser un fichier déjà compressé n'aide pas. Un dossier de documents ramené au tiers de sa taille coûte le tiers du base64 aussi, puisque l'encodage s'applique aux octets qu'on lui donne. Une photographie ou un PDF est déjà compressé : les zipper n'y gagne rien, et le 1,3684 s'applique toujours à la taille entière.

Sortir les fichiers, avec les bons noms

Chaque pièce jointe occupe sa propre partie du message, avec un Content-Type qui dit ce qu'elle est et un Content-Disposition qui donne le nom de fichier choisi par l'expéditeur. Les deux peuvent être encodés en RFC 2047 : une facture française peut s'appeler =?UTF-8?B?ZmFjdHVyZSBqYW52aWVyLnBkZg==?= dans le fichier brut et Facture janvier.pdf une fois décodée — l'extracteur décode, c'est la différence entre un dossier de noms lisibles et un dossier de charabia. Les noms survivent aussi aux espaces et aux accents, que certains scripts d'extraction plus anciens abîment.

Fichiers qui tiennent
Ce qu'une limite d'envoi transporte réellement
Limite annoncéeFichiers qui tiennentTaille encodée
25 Mo18,3 Mio25 Mo
20 Mo14,6 Mio20 Mo
10 Mo7,3 Mio10 Mo
Un fichier de 10 Mio10 Mio13,68 Mio (×1,3684)
Extraire les pièces jointes d'un e-mailSors toutes les pièces jointes d'un message .eml et télécharge-les séparément.Essayer l'outil

Questions fréquentes

Le fichier extrait est-il identique à celui qui a été envoyé ?
Oui. Le base64 est un encodage sans perte : le décodage rend exactement les octets entrés — la somme de contrôle du fichier extrait correspond à celle de l'original. C'est pourquoi le courrier peut transporter un PDF signé ou un logiciel sans les corrompre, et pourquoi la taille visible sur le disque après extraction est la vraie taille, pas la taille encodée.
Pourquoi ma boîte est-elle plus grosse que les fichiers dont je me souviens ?
En partie, et cela s'additionne. Chaque pièce jointe reçue est stockée encodée : une boîte qui contient 3 Gio de fichiers en occupe environ 4,1. Par-dessus, un message que tu as envoyé avec une pièce jointe est en général conservé deux fois — dans Envoyés et dans le fil — et un message transféré emporte de nouveau ses pièces jointes. Extraire puis supprimer les plus grosses pièces jointes rapporte en général plus que supprimer des centaines de petits messages.
Puis-je sortir une pièce jointe d'un message qui refuse de s'ouvrir ?
Souvent oui, et c'est l'une des meilleures raisons d'avoir cet outil sous la main. Un message dont le HTML met en échec un logiciel de messagerie reste un fichier MIME bien formé, et la pièce jointe occupe sa propre partie avec son propre encodage ; l'extracteur lit la structure au lieu d'afficher le message, si bien qu'un corps qui refuse de s'afficher n'empêche pas le fichier de sortir.

Articles qui pourraient t'intéresser

Tous les guides
ExplicationUn .mbox, ce sont des messages collés bout à bout, et la colle est une ligneUn fichier, des milliers de messages, séparés par une ligne commençant par From. Le format a une faiblesse célèbre, et c'est la raison pour laquelle un message peut perdre sa fin sans que rien ne signale d'erreur.TutorielOuvrir un fichier .eml sans prévenir l'expéditeurUn message enregistré est un fichier texte lisible partout. Le hic, c'est qu'ouvrir ce fichier dans un logiciel qui charge les images distantes annonce l'instant où tu l'as fait — c'est précisément à quoi sert un pixel espion.ExplicationUn événement récurrent fait une ligne dans le CSV, pas douzeUn fichier .ics range une réunion hebdomadaire une seule fois, avec une règle attachée. À l'export CSV tu obtiens une ligne pour toute la série — c'est le fichier qui est honnête, pas le convertisseur qui perd des lignes.ExplicationLe même fichier .ics peut désigner cinq heures différentesL'iCalendar écrit une heure de début de trois façons, et une seule est sans ambiguïté. Une réunion écrite avec un fuseau nommé, convertie sur des machines à Paris, New York et Honolulu, s'est étalée sur dix-neuf heures et a changé de jour.ExplicationConvertir les formules en valeurs garde la réponse en cache, pas le calculUn fichier de tableur range à la fois la formule et la dernière réponse calculée par Excel. Retirer la formule laisse la réponse enregistrée — et laisse un vide partout où le fichier n'en portait pas.ExplicationLe nombre 1 et le texte « 1 » ne sont pas des doublonsLe dédoublonnage compare des lignes entières à l'identique, type de cellule compris. Cinq lignes d'apparence identique en ont donné trois : l'une portait un nombre, l'autre une chaîne, la troisième une chaîne précédée d'une espace.

Outils similaires

Sources

Tu as repéré une erreur dans cet article ?