Text/CSV

Sammanfattning

Objekt Beskrivning
Versionsstatus 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 för varje rad som kodas i källtexten. Som exempel på ostrukturerad text bör du överväga en Anteckningar-fil 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.

Du kan bara konfigurera ett alternativ i den här dialogrutan, vilket ä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 fastställs inte teckenuppsättningen automatiskt, och UTF-8 identifieras 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 inkluderar 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. Du kan basera den på de första 200 raderna eller på hela datamängden. Du kan också välja att inaktivera automatisk identifiering av datatyper och i stället låta alla kolumner som standard vara "Text". Varning! Om du väljer hela datamängden kan det leda till att den inledande databelastningen i redigeraren blir långsammare.

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

Eftersom slutsatsdragningen kan vara felaktig bör du dubbelkolla inställningarna innan du läser in.

Strukturerad text

När Power Query identifierar en struktur i textfilen behandlar programmet textfilen som en fil med avgränsade värden. Det ger dig samma alternativ som är tillgängliga när du öppnar en CSV. En CSV är i princip en fil med ett tillägg som anger avgränsartypen.

Om du till exempel sparar följande exempel som en textfil läser Power Query det som 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.

Du kan använda den här strukturen 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) ser du en något annorlunda dialogruta än när du först läser in filen. Beroende på hur du behandlar filen (som 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.

Använd listrutan Radbrytningar för att 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 du anger Radbrytningar till Ignorera citerade radbrytningar läses 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 du ställer in RadbrytningarTillämpa alla radbrytningar läser exemplet in en extra rad, där innehållet efter radbrytningarna är det enda innehållet på raden (exakta utdata kan bero på filinnehållets struktur).

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

Använd listrutan Öppna fil som för att redigera det du vill läsa in filen som. Den här inställningen är viktig 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) behåller du Öppna filen 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

Ange 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 dessutom skickar med headers, och du hämtar så många filer att du behöver ta hänsyn till eventuell hastighetsbegränsning, bör du överväga att omsluta anropet till Web.Contents 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. Arbeta med en csv-fil med mindre storlek först, tillämpa stegen i redigeraren och ändra sökvägen till den större CSV-filen när du är klar. Med den här metoden kan du arbeta mer effektivt och minska dina chanser att stöta på en timeout i onlineredigeraren. Du förväntar dig inte att det här felet uppstår under uppdateringstiden, eftersom tjänsten ger längre tidsgränser.

Ostrukturerad text tolkas som strukturerad

I sällsynta fall tolkar Power Query ett dokument som en CSV när liknande kommanummer visas i stycken. Om det här problemet uppstår 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 ett kolumner=x-steg i Power Query-redigeraren, där x är antalet kolumner i CSV-filen under den första importen. Om du senare lägger till fler kolumner och ställer in att datakällan ska uppdateras innehåller uppdateringsåtgärden inga kolumner utöver det inledande antalet kolumner i x .

Fel: Anslutningen stängdes av värden

När du läser in Text-/CSV-filer från en webbkälla och upphöjer rubriker kan du ibland stöta på 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.". Värden kan orsaka dessa fel genom att använda skyddsåtgärder och stänga en anslutning som kan vara tillfälligt pausad, till exempel när en annan datakällanslutning inväntas för en sammanfogning eller ett tillägg. Om du vill undvika dessa fel kan du prova att lägga till ett Binary.Buffer-anrop (rekommenderas) eller Table.Buffer-anrop . Dessa funktioner laddar ned filen, läser in den i minnet och stänger omedelbart anslutningen. Den här åtgärden förhindrar att nedladdningen pausas och hindrar värddatorn från att tvångsstänga anslutningen innan innehållet har hämtats.

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")))