Læs på engelsk

Del via


Tekst/CSV

Resumé

Element Beskrivelse
Udgivelsestilstand Generel tilgængelighed
Produkter Excel
Power BI (semantiske modeller)
Power BI (dataflow)
Fabric (Dataflow Gen2)
Power Apps (dataflow)
Dynamics 365 Customer Insights
Analysis Services
Dokumentation til funktionsreference File.Contents
Lines.FromBinary
Csv.Document

Bemærk

Nogle funktioner kan være til stede i ét produkt, men ikke andre på grund af installationsplaner og værtsspecifikke egenskaber.

Understøttede egenskaber

  • Importér

Forbind til lokal tekst-/CSV-fil fra Power Query Desktop

Sådan indlæser du en lokal tekst- eller CSV-fil:

  1. Vælg indstillingen Tekst/CSV i Hent data. Denne handling starter en lokal filbrowser, hvor du kan vælge din tekstfil.

    Valg af tekstfil.

    Vælg Åbn for at åbne filen.

  2. I Navigator kan du enten transformere dataene i Power Query-editor ved at vælge Transformér data eller indlæse dataene ved at vælge Indlæs.

    Tekst i Navigator.

Forbind til tekst-/CSV-fil fra Power Query Online

Sådan indlæser du en lokal tekst- eller CSV-fil:

  1. Vælg Tekst/CSVsiden Datakilder.

  2. I Forbind indstillinger skal du angive en filsti til den lokale tekst eller CSV-fil, du vil have.

    Valg af tekstfil online.

  3. Vælg en datagateway i det lokale miljø fra Datagateway.

  4. Angiv et brugernavn og en adgangskode.

  5. Vælg Næste.

  6. Vælg Transformér data i Navigator for at begynde at transformere dataene i Power Query-editor.

    Transformér data.

Indlæs fra internettet

Hvis du vil indlæse en tekst- eller CSV-fil fra internettet, skal du vælge webconnectoren, angive filens webadresse og følge eventuelle legitimationsoplysninger.

Tekst/CSV-afgrænsere

Power Query behandler CSV'er som strukturerede filer med et komma som afgrænser – et særligt tilfælde af en tekstfil. Hvis du vælger en tekstfil, forsøger Power Query automatisk at afgøre, om den har afgrænserseparerede værdier, og hvad afgrænseren er. Hvis den kan udskyde en afgrænser, behandles den automatisk som en struktureret datakilde.

Ustruktureret tekst

Hvis tekstfilen ikke har struktur, får du en enkelt kolonne med en ny række pr. linje kodet i kildeteksten. Som et eksempel på ustruktureret tekst kan du overveje en notesblokfil med følgende indhold:

Hello world.
This is sample data.

Når du indlæser den, får du vist en navigationsskærm, der indlæser hver af disse linjer i deres egen række.

Indlæser data fra en simpel ustruktureret tekstfil.

Der er kun én ting, du kan konfigurere i denne dialogboks, nemlig rullelisten Filoprindelse . På denne rulleliste kan du vælge , hvilket tegnsæt der blev brugt til at generere filen. I øjeblikket udledes tegnsæt ikke, og UTF-8 udledes kun, hvis det starter med en UTF-8-stykliste.

Valg af filkultur til Tekst/CSV.

CSV

Du kan finde et eksempel på en CSV-fil her.

Ud over filoprindelse understøtter CSV også angivelse af afgrænseren, og hvordan registrering af datatyper håndteres.

Indlæser data fra en csv-fil.

Tilgængelige afgrænsere omfatter kolon, komma, lighedstegn, semikolon, mellemrum, tabulator, en brugerdefineret afgrænser (som kan være en hvilken som helst streng) og en fast bredde (opdeling af tekst efter et standardantal tegn).

Afgrænservalg for en csv-fil.

Den endelige rulleliste giver dig mulighed for at vælge, hvordan du vil håndtere registrering af datatyper. Det kan gøres på baggrund af de første 200 rækker, hele datasættet, eller du kan vælge ikke at foretage automatisk registrering af datatyper og i stedet lade alle kolonner som standard være 'Tekst'. Advarsel! Hvis du gør det på hele datasættet, kan det medføre, at den indledende indlæsning af dataene i editoren bliver langsommere.

Valg af datatypeindledning for en csv-fil.

Da inferens kan være forkert, er det værd at dobbelttjekke indstillingerne før indlæsning.

Structured Text

Når Power Query kan registrere struktur i tekstfilen, behandler den tekstfilen som en afgrænsersepareret værdifil og giver dig de samme muligheder, som er tilgængelige, når du åbner en CSV- hvilket i bund og grund kun er en fil med et filtypenavn, der angiver afgrænsertypen.

Hvis du f.eks. gemmer følgende eksempel som en tekstfil, læses det som at have en tabulatorafgrænser i stedet for ustruktureret tekst.

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

Indlæser data fra en struktureret tekstfil.

Dette kan bruges til alle typer andre afgrænserbaserede filer.

Redigerer kilde

Når du redigerer kildetrinnet, får du vist en lidt anden dialogboks, end når du indlæser den første gang. Afhængigt af hvad du i øjeblikket behandler filen som (dvs. tekst eller csv), får du vist en skærm med en række rullemenuer.

Redigerer kildetrinnet i en forespørgsel, der opretter adgang til en CSV-fil.

rullelisten Linjeskift kan du vælge, om du vil anvende linjeskift i anførselstegn eller ej.

Redigerer linjeskiftstypografien for en CSV-fil.

Hvis du f.eks. redigerer eksemplet 'struktureret', der er angivet ovenfor, kan du tilføje et linjeskift.

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

Hvis linjeskift er indstillet til Ignorer linjeskift i anførselstegn, indlæses det, som om der ikke var linjeskift (med ekstra mellemrum).

Indlæsning af en CSV-fil med linjeskift i anførselstegn ignoreres.

Hvis Linjeskift er angivet til Anvend alle linjeskift, indlæses der en ekstra række, hvor indholdet efter linjeskift er det eneste indhold i den pågældende række (nøjagtigt output kan afhænge af strukturen af filindholdet).

Indlæsning af en CSV-fil med linjeskift i anførselstegn anvendt.

rullelisten Åbn fil som kan du redigere det, du vil indlæse filen som – vigtigt for fejlfinding. I forbindelse med strukturerede filer, der teknisk set ikke er CSV'er (f.eks. en fanesepareret værdifil, der er gemt som en tekstfil), skal du stadig have Open-filen som angivet til CSV. Denne indstilling bestemmer også, hvilke rullemenuer der er tilgængelige i resten af dialogboksen.

Ændrer filtypen.

Tekst/CSV efter eksempel

Tekst/CSV efter eksempel i Power Query er en offentlig tilgængelig funktion i Power BI Desktop og Power Query Online. Når du bruger Text/CSV-connectoren, får du vist en mulighed for at udtrække tabel ved hjælp af eksempler i nederste venstre hjørne af navigatoren.

Brug indstillingen Udtræk tabel ved hjælp af eksempler.

Når du vælger denne knap, føres du ind på siden Udtræk tabel ved hjælp af eksempler . På denne side skal du angive eksempeloutputværdier for de data, du vil udtrække fra din Tekst/CSV-fil. Når du har indtastet den første celle i kolonnen, udfyldes andre celler i kolonnen. Hvis dataene skal udtrækkes korrekt, skal du muligvis angive mere end én celle i kolonnen. Hvis nogle celler i kolonnen er forkerte, kan du rette den første forkerte celle, og dataene udtrækkes igen. Kontrollér dataene i de første par celler for at sikre, at dataene er blevet udtrukket korrekt.

Bemærk

Vi anbefaler, at du angiver eksemplerne i kolonnerækkefølgen. Når kolonnen er udfyldt, skal du oprette en ny kolonne og begynde at angive eksempler i den nye kolonne.

Angiv eksempeloutputværdier for at udtrække data.

Når du er færdig med at oprette tabellen, kan du enten vælge at indlæse eller transformere dataene. Bemærk, hvordan de resulterende forespørgsler indeholder en detaljeret opdeling af alle de trin, der blev udledt til dataudtrækningen. Disse trin er blot almindelige forespørgselstrin, som du kan tilpasse efter behov.

Detaljeret opdeling af trin til udtrækning af data.

Fejlfinding

Indlæser filer fra internettet

Hvis du anmoder om tekst-/csv-filer fra internettet og også hæver overskrifter, og du henter nok filer, som du skal bekymre dig om med potentiel begrænsning, bør du overveje at ombryde dit Web.Contents opkald med Binary.Buffer(). I dette tilfælde medfører bufferlagring af filen, før headere fremhæves, at der kun anmodes om filen én gang.

Arbejde med store CSV-filer

Hvis du har at gøre med store CSV-filer i Power Query Online-editoren, får du muligvis vist en intern fejl. Vi anbefaler, at du arbejder med en mindre CSV-fil først, anvender trinnene i editoren, og når du er færdig, skal du ændre stien til den større CSV-fil. Med denne metode kan du arbejde mere effektivt og reducere dine chancer for at støde på timeout i onlineeditoren. Vi forventer ikke, at du støder på denne fejl under opdateringstiden, da vi tillader en længere timeoutvarighed.

Ustruktureret tekst fortolkes som struktureret

I sjældne tilfælde kan et dokument, der har lignende kommanumre på tværs af afsnit, fortolkes som en CSV. Hvis dette problem opstår, skal du redigere kildetrinnet i Power Query-editoren og vælge Tekst i stedet for CSVrullelisten Åbn fil som .

Kolonner i Power BI Desktop

Når du importerer en CSV-fil, genererer Power BI Desktop en columns=x (hvor x er antallet af kolonner i CSV-filen under den indledende import) som et trin i Power Query-editor. Hvis du efterfølgende tilføjer flere kolonner, og datakilden er indstillet til at blive opdateret, opdateres kolonner ud over det indledende antal x ikke.

Fejl: Forbind ion lukket af værten

Når du indlæser Tekst/CSV-filer fra en webkilde og også hæver overskrifter, kan du nogle gange støde på følgende fejl: "An existing connection was forcibly closed by the remote host" eller "Received an unexpected EOF or 0 bytes from the transport stream." Disse fejl kan skyldes, at værten anvender beskyttelsesforanstaltninger og lukker en forbindelse, der kan være midlertidigt afbrudt, f.eks. når du venter på en anden datakildeforbindelse til en join- eller tilføjelseshandling. Du kan løse disse fejl ved at prøve at tilføje et Binary.Buffer-kald (anbefales) eller Table.Buffer , som henter filen, indlæser den i hukommelsen og straks lukker forbindelsen. Dette bør forhindre pause under download og forhindre værten i at tvangslukke forbindelsen, før indholdet hentes.

I følgende eksempel illustreres denne løsning. Denne bufferlagring skal udføres, før den resulterende tabel overføres til Table.PromoteHeaders.

  • Oprindelige:
Csv.Document(Web.Contents("https://.../MyFile.csv"))
  • Med Binary.Buffer:
Csv.Document(Binary.Buffer(Web.Contents("https://.../MyFile.csv")))
  • Med Table.Buffer:
Table.Buffer(Csv.Document(Web.Contents("https://.../MyFile.csv")))