Partager via


Texte/CSV

Résumé

Élément Descriptif
État de publication Disponibilité générale
Produits Excel
Power BI (modèles sémantiques)
Power BI (flux de données)
Fabric (Dataflow Gen2)
Power Apps (Flux de données)
Dynamics 365 Customer Insights
Services d'analyse
Documentation de référence sur les fonctions File.Contents
Lines.FromBinary
Csv.Document

Remarque

Certaines fonctionnalités peuvent être présentes dans un produit, mais pas d’autres en raison de planifications de déploiement et de fonctionnalités spécifiques à l’hôte.

Fonctionnalités prises en charge

  • Importer

Se connecter au fichier texte/CSV local à partir de Power Query Desktop

Pour charger un fichier texte ou CSV local :

  1. Sélectionnez l’option Texte/CSV dans Obtenir des données. Cette action lance un navigateur de fichiers local dans lequel vous pouvez sélectionner votre fichier texte.

    Capture d’écran du navigateur de fichiers ouvert lorsque vous sélectionnez votre fichier texte.

    Sélectionnez Ouvrir pour ouvrir le fichier.

  2. Dans le navigateur, vous pouvez transformer les données dans l’éditeur Power Query en sélectionnant Transformer des données ou en chargeant les données en sélectionnant Charger.

    Capture d’écran de l’exemple de texte dans le navigateur.

Se connecter au fichier texte/CSV à partir de Power Query Online

Pour charger un fichier texte ou CSV local :

  1. Dans la page Sources de données , sélectionnez Texte/CSV.

  2. Dans les paramètres de connexion, chargez le fichier ou entrez un chemin d’accès au fichier local texte ou CSV souhaité.

    Capture d’écran de l’écran de sélection de fichier texte en ligne.

  3. Sélectionnez une passerelle de données locale à partir de la passerelle de données.

  4. Saisissez un nom d’utilisateur et un mot de passe.

  5. Cliquez sur Suivant.

  6. Dans le navigateur, sélectionnez Transformer des données pour commencer à transformer les données dans l’éditeur Power Query.

    Capture d’écran de la fenêtre de navigateur en ligne dans laquelle vous sélectionnez Transformer des données.

Charger à partir du web

Pour charger un fichier texte ou CSV à partir du web, sélectionnez le connecteur Web, entrez l’adresse web du fichier et suivez les invites de saisie des identifiants.

Délimiteurs de texte/CSV

Power Query traite les CSV comme des fichiers structurés avec une virgule comme délimiteur, un cas spécial d’un fichier texte. Si vous choisissez un fichier texte, Power Query tente automatiquement de déterminer s’il a des valeurs séparées par un délimiteur et ce que ce délimiteur est. S’il peut différer un délimiteur, il le traite automatiquement comme une source de données structurée.

Texte non structuré

Si votre fichier texte n’a pas de structure, vous obtenez une seule colonne avec une nouvelle ligne par ligne encodée dans le texte source. En guise d’exemple pour le texte non structuré, vous pouvez envisager un fichier de bloc-notes avec le contenu suivant :

Hello world.
This is sample data.

Lorsqu'il est chargé, un écran de navigation s'affiche, intégrant chaque ligne dans sa propre rangée.

Capture d’écran du navigateur avec des données chargées à partir d’un fichier texte simple non structuré.

Il n’existe qu’une seule chose que vous pouvez configurer dans cette boîte de dialogue, qui est la sélection déroulante Origine du fichier . Cette liste déroulante vous permet de sélectionner le jeu de caractères utilisé pour générer le fichier. Actuellement, le jeu de caractères n’est pas déduit et UTF-8 n’est déduit que s’il commence par un BOM UTF-8.

Capture d’écran de la sélection de culture de fichier pour Text/CSV.

CSV

Vous trouverez ici un exemple de fichier CSV.

Outre l’origine du fichier, CSV prend également en charge la spécification du délimiteur et la façon dont la détection du type de données est gérée.

Capture d’écran du navigateur montrant les données chargées à partir d’un fichier csv.

Les délimiteurs disponibles incluent deux-points, virgules, signe égal, point-virgule, espace, onglet, délimiteur personnalisé (qui peut être n’importe quelle chaîne) et une largeur fixe (fractionnement du texte par un nombre standard de caractères).

Capture d’écran de la sélection du délimiteur pour un fichier csv.

La liste déroulante finale vous permet de sélectionner la façon dont vous souhaitez gérer la détection des types de données. Elle peut être effectuée en fonction des 200 premières lignes ou de l’ensemble du jeu de données. En outre, vous pouvez choisir de ne pas détecter automatiquement les types de données et laisser toutes les colonnes par défaut « Text ». Avertissement : si vous le faites sur l’ensemble du jeu de données, la charge initiale des données dans l’éditeur peut être plus lente.

Capture d’écran de la sélection d’inférence de type de données pour un fichier csv.

Étant donné que l’inférence peut être incorrecte, il vaut la peine de vérifier les paramètres avant le chargement.

Texte structuré

Lorsque Power Query peut détecter la structure de votre fichier texte, il traite le fichier texte comme un fichier de valeurs séparé par un délimiteur et vous offre les mêmes options disponibles lors de l’ouverture d’un fichier CSV, qui est essentiellement un fichier avec une extension indiquant le type de délimiteur.

Par exemple, si vous enregistrez l’exemple suivant en tant que fichier texte, il lit comme ayant un délimiteur d’onglet plutôt que du texte non structuré.

Column 1	Column 2	Column 3
This is a string.	1	ABC123
This is also a string.	2	DEF456

Capture d’écran montrant les données chargées à partir d’un fichier texte structuré.

Cette structure peut être utilisée pour n’importe quel type d’autre fichier basé sur un délimiteur.

Modification de la source

Lors de la modification de l’étape source (dans le volet Étapes appliquées de Power Query Desktop), vous êtes présenté avec une boîte de dialogue légèrement différente de celle du chargement initial. Selon ce que vous traitez actuellement le fichier comme (texte ou csv), un écran vous est présenté avec plusieurs options déroulantes.

Capture d’écran de la boîte de dialogue dans laquelle vous modifiez l’étape source d’une requête accédant à un fichier CSV.

La liste déroulante Sauts de ligne vous permet de sélectionner si vous souhaitez appliquer des sauts de ligne entre guillemets ou non.

Capture d’écran de la liste déroulante dans laquelle vous sélectionnez le style de saut de ligne d’un fichier CSV.

Par exemple, si vous modifiez l’exemple « structuré » précédemment fourni, vous pouvez ajouter un saut de ligne.

Column 1	Column 2	Column 3
This is a string.	1	"ABC
123"
This is also a string.	2	"DEF456"

Si les sauts de ligne sont définis sur Ignorer les sauts de ligne entre guillemets, cet exemple se charge avec la deuxième moitié de la chaîne sous la première moitié de la même colonne.

Le chargement d’un fichier CSV avec des sauts de ligne entre guillemets est ignoré.

Si les sauts de ligne sont définis sur Appliquer tous les sauts de ligne, cet exemple charge une ligne supplémentaire, avec le contenu après le saut de ligne étant le seul contenu de cette ligne (la sortie exacte peut dépendre de la structure du contenu du fichier).

Chargement d’un fichier CSV avec des sauts de ligne entre guillemets appliqués.

La liste déroulante Ouvrir le fichier en tant que vous permet de choisir le type de fichier que vous souhaitez charger, ce qui est important pour la résolution des problèmes. Pour les fichiers structurés qui ne sont pas techniquement des CSVs (par exemple, un fichier de valeurs séparées par un onglet enregistré en tant que fichier texte), vous devez toujours avoir ouvert le fichier comme défini sur CSV. Ce paramètre détermine également les listes déroulantes disponibles dans le reste de la boîte de dialogue.

Modification du type de fichier.

Texte/CSV par exemple

Le texte/CSV par exemple dans Power Query est une fonctionnalité généralement disponible dans Power BI Desktop et Power Query Online. Lorsque vous utilisez le connecteur Text/CSV, vous voyez une option permettant d’extraire un tableau à l’aide d’exemples dans le coin inférieur gauche du navigateur.

Utilisation de l’option Extraire la table à l’aide d’exemples.

Lorsque vous sélectionnez ce bouton, vous êtes redirigé vers la page Extraire la table à l’aide d’exemples . Dans cette page, vous spécifiez des exemples de valeurs de sortie pour les données que vous souhaitez extraire de votre fichier Texte/CSV. Une fois que vous avez entré la première cellule de la colonne, d’autres cellules de la colonne sont remplies. Pour que les données soient extraites correctement, vous devrez peut-être entrer plusieurs cellules dans la colonne. Si certaines cellules de la colonne sont incorrectes, vous pouvez corriger la première cellule incorrecte et les données sont extraites à nouveau. Pour vous assurer que les données ont été extraites avec succès, vérifiez les données dans les premières cellules.

Remarque

Nous vous recommandons d’entrer les exemples dans l’ordre des colonnes. Une fois la colonne remplie, créez une colonne et commencez à entrer des exemples dans la nouvelle colonne.

Spécifiez des exemples de valeurs de sortie pour extraire des données.

Une fois que vous avez terminé la construction de cette table, vous pouvez choisir de charger ou de transformer les données. Notez comment les requêtes résultantes contiennent une répartition détaillée de toutes les étapes déduites pour l’extraction de données. Ces étapes sont des étapes de requête régulières que vous pouvez personnaliser en fonction des besoins.

Répartition détaillée des étapes d’extraction de données.

Résolution des problèmes

Chargement de fichiers à partir du web

Si vous demandez des fichiers texte/csv à partir du web et que vous ajoutez également des en-têtes, et que vous récupérez suffisamment de fichiers pour vous soucier de la régulation potentielle, vous devriez envisager d’encapsuler votre appel Web.Contents par Binary.Buffer(). Dans ce cas, la mise en mémoire tampon du fichier avant de promouvoir les en-têtes entraîne la demande du fichier une seule fois.

Utilisation de fichiers CSV volumineux

Si vous traitez de fichiers CSV volumineux dans l’éditeur Power Query Online, vous pouvez recevoir une erreur interne. Nous vous suggérons d’utiliser d’abord un fichier CSV de taille plus petite, d’appliquer les étapes de l’éditeur et, une fois que vous avez terminé, modifiez le chemin d’accès au fichier CSV plus grand. Cette méthode vous permet de travailler plus efficacement et de réduire vos chances de rencontrer un délai d’expiration dans l’éditeur en ligne. Nous ne nous attendons pas à ce que vous rencontriez cette erreur pendant le temps d’actualisation, car nous prévoyons une durée de délai d’attente plus longue.

Texte non structuré interprété comme structuré

Dans de rares cas, un document qui comporte des nombres de virgules similaires entre les paragraphes peut être interprété comme un fichier CSV. Si ce problème se produit, modifiez l’étape Source dans l’éditeur Power Query, puis sélectionnez Texte au lieu de CSV dans la liste déroulante Ouvrir un fichier sous .

Colonnes dans Power BI Desktop

Lorsque vous importez un fichier CSV, Power BI Desktop génère une colonne=x (où x correspond au nombre de colonnes du fichier CSV pendant l’importation initiale) en tant qu’étape dans l’éditeur Power Query. Si vous ajoutez ultérieurement d’autres colonnes et que la source de données est définie pour l’actualisation, toutes les colonnes au-delà du nombre initial x de colonnes ne sont pas actualisées.

Erreur : Connexion fermée par l’hôte

Lors du chargement de fichiers Texte/CSV à partir d’une source web et de promotion d’en-têtes, vous pouvez parfois rencontrer les erreurs suivantes : "An existing connection was forcibly closed by the remote host" ou "Received an unexpected EOF or 0 bytes from the transport stream." l’hôte peut provoquer ces erreurs en utilisant des mesures de protection et en fermant une connexion qui peut être temporairement suspendue, par exemple lors de l’attente d’une autre connexion de source de données pour une opération de jointure ou d’ajout. Pour contourner ces erreurs, essayez d’ajouter un appel Binary.Buffer (recommandé) ou Table.Buffer , qui télécharge le fichier, le charge en mémoire et ferme immédiatement la connexion. Cette action doit empêcher toute pause pendant le téléchargement et empêcher l’hôte de fermer de force la connexion avant la récupération du contenu.

L’exemple suivant illustre cette solution de contournement. Cette mise en mémoire tampon doit être effectuée avant que la table résultante soit passée à Table.PromoteHeaders.

  • Ressource d’origine :
Csv.Document(Web.Contents("https://.../MyFile.csv"))
  • Avec Binary.Buffer:
Csv.Document(Binary.Buffer(Web.Contents("https://.../MyFile.csv")))
  • Avec Table.Buffer:
Table.Buffer(Csv.Document(Web.Contents("https://.../MyFile.csv")))