Collez des lignes CSV, TSV ou d’autres textes délimités et copiez le balisage <table> obtenu. Les champs entre guillemets, les guillemets doublés (« "" ») et les sauts de ligne entre guillemets forment une seule cellule, et le texte des cellules est échappé pour HTML.
Fonctionne localement dans votre navigateurCollez des lignes CSV, TSV ou délimitées, choisissez le caractère qui sépare les colonnes et la page renvoie le balisage du tableau : un <tr> par ligne et un <td> par champ, prêt à coller dans une page, un modèle d’e-mail ou un README.
Les lignes sont lues dans le navigateur par un analyseur qui comprend les guillemets : un champ entre guillemets peut contenir le séparateur, "" vaut un guillemet littéral, et un saut de ligne dans un champ entre guillemets reste dans cette cellule. Rien n’est envoyé et la page continue de fonctionner hors ligne une fois chargée.
Un champ entre guillemets peut contenir le séparateur lui-même : dans "ac, abs, moon" la virgule fait partie du texte, la ligne conserve donc quatre champs au lieu de découper la valeur citée en trois. Dans un champ entre guillemets, "" représente un guillemet littéral ; c’est ainsi qu’une valeur comme "Venture ""Extended Edition""" reste intacte.
Un saut de ligne dans un champ entre guillemets reste dans cette cellule, et un saut à la fin du texte collé n’ajoute pas de ligne vide. Si la zone est vide, la page le signale au lieu de renvoyer un tableau vide.
La sortie est un fragment <table> nu : un <tr> par ligne, un <td> par champ, sans attribut, sans CSS, sans <thead> et sans ligne d’en-tête — la première ligne est une ligne de <td> comme les autres.
Le texte des cellules est échappé pour HTML : & devient &, < devient < et > devient >. Une cellule contenant du balisage ou une balise script reste donc du texte visible dans le tableau généré au lieu de faire partie de la page qui l’intègre.
Le séparateur est comparé comme une chaîne littérale, pas comme une expression régulière : un séparateur personnalisé tel que . * ( ou :: est donc traité comme un texte ordinaire. La page ne devine pas le séparateur : si le nombre de colonnes affiché ne correspond pas, c’est la première chose à vérifier.
L’entrée est uniquement du texte collé : il n’y a pas de sélecteur de fichier .csv ou .xlsx, une feuille de calcul doit donc être exportée ou copiée depuis son application. La conversion se fait dans le navigateur et quelques milliers de lignes sont instantanées ; au-delà de 100 000 caractères, le résultat s’affiche sans coloration pour ne pas bloquer l’onglet.