Dela via


Text/CSV

Sammanfattning

Objekt Beskrivning
Frisläppningsstatus Allmän tillgänglighet
Produkter Excel
Power BI (semantiska modeller)
Power BI (dataflöden)
Fabric (Dataflöde Gen2)
Power Apps (dataflöden)
Dynamics 365 Customer Insights
Analystjänster
Dokumentation om funktionsreferens File.Contents
Lines.FromBinary
Csv.Document

Anmärkning

Vissa funktioner kan finnas i en produkt, men inte andra på grund av distributionsscheman och värdspecifika funktioner.

Funktioner som stöds

  • Importera

Ansluta till lokal text/CSV-fil från Power Query Desktop

Så här läser du in en lokal text- eller CSV-fil:

  1. Välj alternativet Text/CSV i Hämta data. Den här åtgärden startar en lokal filwebbläsare där du kan välja textfilen.

    Skärmbild av den öppna filwebbläsaren som du gör ditt textfilval.

    Välj Öppna för att öppna filen.

  2. Från Navigatören kan du antingen transformera data i Power Query-redigeraren genom att välja Transformera data eller läsa in data genom att välja Läs in.

    Skärmbild av exempeltexten i Navigatören.

Ansluta till text-/CSV-fil från Power Query Online

Så här läser du in en lokal text- eller CSV-fil:

  1. På sidan Datakällor väljer du Text/CSV.

  2. I Anslutningsinställningar laddar du antingen upp filen eller anger en filsökväg till den lokala text- eller CSV-fil som du vill använda.

    Skärmbild av markeringsskärmen för onlinetextfiler.

  3. Välj en lokal datagateway från Data gateway.

  4. Ange ett användarnamn och ett lösenord.

  5. Välj Nästa.

  6. I Navigatören väljer du Transformera data för att börja transformera data i Power Query-redigeraren.

    Skärmbild av online-navigeringsfönstret där du väljer Transformera data.

Läsa in från webben

Om du vill läsa in en text- eller CSV-fil från webben väljer du webbanslutningsappen, anger filens webbadress och följer eventuella uppmaningar om autentiseringsuppgifter.

Text/CSV-avgränsare

Power Query behandlar CSV:er som strukturerade filer med kommatecken som avgränsare – ett specialfall för en textfil. Om du väljer en textfil försöker Power Query automatiskt avgöra om filen har avgränsade värden och vad avgränsaren i så fall är. Om den kan härleda en avgränsare behandlas den automatiskt som en strukturerad datakälla.

Ostrukturerad text

Om textfilen inte har någon struktur får du en enda kolumn med en ny rad per rad kodad i källtexten. Som exempel på ostrukturerad text kan du överväga en anteckningsfil med följande innehåll:

Hello world.
This is sample data.

När du läser in den visas en navigeringsskärm som läser in var och en av dessa rader i sin egen rad.

Skärmbild av navigatören med inlästa data från en enkel ostrukturerad textfil.

Det finns bara en sak som du kan konfigurera i den här dialogrutan, som är listrutan Arkiv ursprung . Med den här listrutan kan du välja vilken teckenuppsättning som användes för att generera filen. För närvarande härleds inte teckenuppsättningen och UTF-8 härleds endast om den börjar med en UTF-8 BOM.

Skärmbild av valet av filkultur för Text/CSV.

CSV

Du hittar en CSV-exempelfil här.

Förutom filernas ursprung har CSV även stöd för att ange avgränsare och hur identifiering av datatyper hanteras.

Skärmbild av navigatören som visar inlästa data från en csv-fil.

Avgränsare som är tillgängliga är kolon, kommatecken, likhetstecken, semikolon, blanksteg, flik, en anpassad avgränsare (som kan vara valfri sträng) och en fast bredd (dela upp text med något standardantal tecken).

Skärmbild av valet av avgränsare för en csv-fil.

I den sista listrutan kan du välja hur du vill hantera identifiering av datatyper. Det kan göras baserat på de första 200 raderna eller på hela datauppsättningen. Du kan också välja att inte göra automatisk identifiering av datatyp och i stället låta alla kolumner som standard vara "Text". Varning! Om du gör det på hela datamängden kan den första databelastningen i redigeraren bli långsammare.

Skärmbild av datatypens slutsatsdragningsval för en csv-fil.

Eftersom slutsatsdragning kan vara felaktig är det värt att dubbelkolla inställningarna innan du läser in.

Strukturerad text

När Power Query kan identifiera strukturen i textfilen behandlar den textfilen som en avgränsareavgränsad värdefil och ger dig samma alternativ som är tillgängliga när du öppnar en CSV, vilket i huvudsak är en fil med ett tillägg som anger avgränsartypen.

Om du till exempel sparar följande exempel som en textfil, så ser det ut som att det har en tabbgränsare i stället för ostrukturerad text.

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

Skärmbild som visar inlästa data från en strukturerad textfil.

Den här strukturen kan användas för alla typer av andra avgränsarbaserade filer.

Redigeringskälla

När du redigerar källsteget (i fönstret Tillämpade steg i Power Query Desktop) visas en något annorlunda dialogruta än när du först läste in. Beroende på vad du behandlar filen som (dvs. text eller csv) visas en skärm med olika listrutor.

Skärmbild av dialogrutan där du redigerar källsteget på en fråga som kommer åt en CSV-fil.

Med listrutan Radbrytningar kan du välja om du vill använda radbrytningar som finns inom citattecken eller inte.

Skärmbild av listrutan där du väljer radbrytningsformatet för en CSV-fil.

Om du till exempel redigerar det "strukturerade" exemplet som angavs tidigare kan du lägga till en radbrytning.

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

Om Radbrytningar är inställt på Ignorera citerade radbrytningar läses det här exemplet in med den andra halvan av strängen under den första halvan i samma kolumn.

Inläsning av en CSV-fil med citerade radbrytningar ignoreras.

Om Radbrytningar är inställt på Tillämpa alla radbrytningar läser det här exemplet in en extra rad, där innehållet efter radbrytningarna är det enda innehållet i raden (exakta utdata kan bero på filinnehållets struktur).

Inläsning av en CSV-fil med angivna radbrytningar.

Med listrutan Öppna fil som kan du redigera det du vill läsa in filen som – viktigt för felsökning. För strukturerade filer som inte tekniskt sett är CSV:er (till exempel en flikavgränsad värdefil som sparats som en textfil) bör du fortfarande ha Öppna fil som inställd på CSV. Den här inställningen bestämmer också vilka listrutor som är tillgängliga i andra delar av dialogrutan.

Ändra filtyp.

Text/CSV med exempel

Text/CSV Efter exempel i Power Query är en allmänt tillgänglig funktion i Power BI Desktop och Power Query Online. När du använder anslutningsappen Text/CSV visas ett alternativ för att extrahera tabell med hjälp av exempel i det nedre vänstra hörnet av navigatören.

Använd alternativet Extrahera tabell med hjälp av exempel.

När du väljer den knappen tas du till sidan Extrahera tabell med hjälp av exempel . På den här sidan anger du exempelutdatavärden för de data som du vill extrahera från text-/CSV-filen. När du har angett den första cellen i kolumnen fylls andra celler i kolumnen i. För att data ska extraheras korrekt kan du behöva ange mer än en cell i kolumnen. Om vissa celler i kolumnen är felaktiga kan du åtgärda den första felaktiga cellen och data extraheras igen. För att säkerställa att data har extraherats framgångsrikt, kontrollera data i de första cellerna.

Anmärkning

Vi rekommenderar att du anger exemplen i kolumnordning. När kolumnen har fyllts i skapar du en ny kolumn och börjar ange exempel i den nya kolumnen.

Ange exempelutdatavärden för att extrahera data.

När du har skapat tabellen kan du antingen välja att läsa in eller transformera data. Observera hur de resulterande frågorna innehåller en detaljerad uppdelning av alla steg som härleddes för dataextraheringen. De här stegen är vanliga frågesteg som du kan anpassa efter behov.

Detaljerad uppdelning av steg för dataextrahering.

Felsökning

Läser in filer från webben

Om du begär text-/csv-filer från webben och även främjar rubriker, och du hämtar tillräckligt många filer som du behöver bry dig om potentiella begränsningar, bör du överväga att omsluta Web.Contents anropet med Binary.Buffer(). I det här fallet innebär buffring av filen innan du befordrar rubriker att filen bara begärs en gång.

Arbeta med stora CSV-filer

Om du har att göra med stora CSV-filer i Power Query Online-redigeraren kan du få ett internt fel. Vi föreslår att du arbetar med en csv-fil med mindre storlek först, utför stegen i redigeraren och när du är klar ändrar du sökvägen till den större CSV-filen. Med den här metoden kan du arbeta mer effektivt och minska dina chanser att stöta på en timeout i onlineredigeraren. Vi förväntar oss inte att du stöter på det här felet under uppdateringstiden, eftersom vi tillåter längre tidsgränser.

Ostrukturerad text tolkas som strukturerad

I sällsynta fall kan ett dokument som har liknande kommanummer mellan stycken tolkas som en CSV. Om det här problemet inträffar redigerar du källsteget i Power Query-redigeraren och väljer Text i stället för CSV i listrutan Öppna fil som .

Kolumner i Power BI Desktop

När du importerar en CSV-fil genererar Power BI Desktop en columns=x (där x är antalet kolumner i CSV-filen under den första importen) som ett steg i Power Query-redigeraren. Om du senare lägger till fler kolumner och datakällan är inställd på att uppdateras uppdateras inte kolumner utöver det inledande antalet kolumner x .

Fel: Anslutningen stängdes av värden

När du läser in Text-/CSV-filer från en webbkälla och för att främja rubriker kan det ibland uppstå följande fel: "An existing connection was forcibly closed by the remote host" eller "Received an unexpected EOF or 0 bytes from the transport stream." Servern kan orsaka dessa fel genom att använda skyddsåtgärder och stänga en anslutning som tillfälligt kan pausas, till exempel när du väntar på en anslutning från en annan datakälla för en sammanfogning eller tillägg. Om du vill undvika dessa fel kan du prova att lägga till ett Binary.Buffer-anrop (rekommenderas) eller Table.Buffer-anrop som laddar ned filen, läser in den i minnet och omedelbart stänger anslutningen. Den här åtgärden bör förhindra någon paus under nedladdningen och hindra värden från att stänga anslutningen innan innehållet hämtas.

I följande exempel visas den här lösningen. Den här buffring måste göras innan den resulterande tabellen skickas till Table.PromoteHeaders.

  • Ursprungligt:
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")))