Läs data i Excel-filer med C#

Excel-kalkylblad är ett vanligt format för att lagra och organisera data, vilket gör dem till en värdefull resurs för företag och privatpersoner. Oavsett om du behöver analysera finansiell data, generera rapporter eller manipulera datauppsättningar kan det vara ett kritiskt krav att arbeta med Excel-filer i dina C#-applikationer. Aspose.Cells för .NET är ett kraftfullt bibliotek som förenklar Excel-filmanipulation i C#. I det här blogginlägget kommer vi att utforska hur du läser Excel-filer med C# i en .NET-applikation, och erbjuder en steg-för-steg-guide som hjälper dig att komma igång.

C# API för att läsa Excel-filer

För att läsa data från Excel-ark kommer vi att använda Aspose.Cells for .NET. Det är ett kraftfullt och funktionsrikt API för att skapa och manipulera Excel-filer. Dessutom låter det dig läsa Excel-filer ganska enkelt. API:t kan laddas ner från nedladdningssektionen eller installeras via NuGet.

PM> Install-Package Aspose.Cells

Läs data från en Excel-fil i C#

I Excel-filer lagras data i celler där varje cell identifieras med sitt namn (A1, B3, etc.) eller rad- och kolumnindex. Samlingen av celler gör ett kalkylblad och en Excel-fil kan innehålla enstaka eller flera kalkylblad. Slutligen bildar alla kalkylbladen tillsammans en arbetsbok. Aspose.Cells för .NET använder samma namnkonventioner för att manipulera Excel-filer.

Följande är stegen för att läsa en Excel-fil och hämta data i C#.

  • Ladda Excel-filen med klassen Arbetsbok.
  • Skapa ett objekt av klassen WorksheetCollection och få referensen till arbetsbladen med Workbook.Worksheets.
  • Starta en loop för att gå igenom alla kalkylblad i samlingen och utför följande steg i varje iteration:
    • Få en referens till kalkylbladet i ett Worksheet-objekt.
    • Få ett antal datarader och kolumner i kalkylbladet.
    • Starta en slinga för rader.
    • Starta en kapslad loop för kolumner.
    • Läs data från varje cell med egenskapen Worksheet.Cells[i, j].Value.

Följande kodexempel visar hur man läser en Excel-fil i C#.

// Ladda Excel-fil
Workbook wb = new Workbook("excel.xlsx");

// Få alla arbetsblad
WorksheetCollection collection = wb.Worksheets;

// Bläddra igenom alla kalkylblad
for (int worksheetIndex = 0; worksheetIndex < collection.Count; worksheetIndex++)
{

    // Hämta kalkylblad med hjälp av dess index
    Worksheet worksheet = collection[worksheetIndex];

    // Skriv ut kalkylbladsnamn
    Console.WriteLine("Worksheet: " + worksheet.Name);

    // Få antal rader och kolumner
    int rows = worksheet.Cells.MaxDataRow;
    int cols = worksheet.Cells.MaxDataColumn;

    // Slinga genom rader
   for (int i = 0; i < rows; i++)
    {

        // Gå igenom varje kolumn i den valda raden
       for (int j = 0; j < cols; j++)
        {
            // Pring cell värde
            Console.Write(worksheet.Cells[i, j].Value + " | ");
        }
        // Skriv ut radbrytning
        Console.WriteLine(" ");
    }
}

Följande är utdata som vi får i konsolen efter att ha kört kodexemplet ovan.

Läsa data i Excel-filens kalkylblad i C#

Läsa en Excel-fil i C#

Läs ett specifikt Excel-ark

Du kan också läsa endast ett visst kalkylblad i Excel-filen genom att följa stegen nedan.

Följande kodexempel visar hur man läser data från ett visst kalkylblad i C#.

// Ladda Excel-fil
Workbook wb = new Workbook("excel.xlsx");

// Hämta kalkylblad med hjälp av dess index
Worksheet worksheet = wb.Worksheets[0];

// Skriv ut kalkylbladsnamn
Console.WriteLine("Worksheet: " + worksheet.Name);

// Få antal rader och kolumner
int rows = worksheet.Cells.MaxDataRow;
int cols = worksheet.Cells.MaxDataColumn;

// Slinga genom rader
for (int i = 0; i < rows; i++)
{
    // Gå igenom varje kolumn i den valda raden
   for (int j = 0; j < cols; j++)
    {
        // Pring cell värde
        Console.Write(worksheet.Cells[i, j].Value + " | ");
    }
    // Skriv ut radbrytning
    Console.WriteLine(" ");
}

Få gratis API för att läsa Excel-data

Du kan använda Aspose.Cells för .NET och läsa Excel-filer utan utvärderingsbegränsningar genom att skaffa en gratis tillfällig licens.

Slutsats

Att läsa Excel-filer i C# med Aspose.Cells för .NET är en enkel och effektiv process. Aspose.Cells tillhandahåller en omfattande uppsättning funktioner för att hantera alla aspekter av Excel-filmanipulation i dina .NET-applikationer. Oavsett om du behöver extrahera data, formatera ark eller utföra mer avancerade uppgifter, förenklar Aspose.Cells processen och hjälper dig att nå dina Excel-relaterade mål med lätthet.

Du kan utforska andra funktioner i Aspose.Cells för .NET med hjälp av dokumentationen. Om du har några frågor är du välkommen att meddela oss via vårt forum.

Se även