Panoramica

Nel mondo della gestione dei dati, gestire i file di valori separati da virgola (CSV) è un requisito comune. Questi file sono ampiamente utilizzati per memorizzare dati tabulari come fogli di calcolo o banche dati a causa della loro semplicità e facilità di lettura. La possibilità di unire e dividere i file CSV in modo programmatico può far risparmiare tempo e semplificare i flussi di lavoro, specialmente quando si gestiscono grandi volumi di dati.

Questo articolo fornisce una guida passo passo su come unire e dividere file CSV utilizzando la libreria GroupDocs.Merger per .NET.

Come unire file CSV

Unire più file CSV in un unico documento può semplificare notevolmente la gestione dei dati e la reportistica. In C#, la libreria GroupDocs.Merger per .NET rende questo processo semplice ed efficiente, eliminando la necessità di manipolazioni manuali dei dati. Di seguito sono riportati i passaggi chiave per unire file CSV utilizzando C#:

  1. Carica il tuo file CSV sorgente: Crea un’istanza della classe Merger, passando il percorso del primo file CSV come parametro.
  2. Aggiungi file CSV aggiuntivi: Usa il metodo Join per aggiungere altri file CSV che desideri unire al primo documento.
  3. Salva il risultato unito: Chiama il metodo Save per scrivere i dati combinati in un nuovo file CSV.

Ecco un esempio che illustra questi passaggi:

// Importa i namespace necessari
using System;
using System.IO;

namespace GroupDocs.Merger.Examples.CSharp.BasicUsage
{
    /// <summary>
    /// Questo esempio dimostra come unire più file CSV in un unico file.
    /// </summary>
    internal static class MergeCsv
    {
        public static void Run()
        {
            Console.WriteLine("=======================================================================");
            Console.WriteLine("Esempio Uso di Base: MergeCsv");
            Console.WriteLine();

            // Definisci la cartella di output e il nome del file
            string outputFolder = Constants.GetOutputDirectoryPath();
            string outputFile = Path.Combine(outputFolder, "merged.csv");
            
            // Carica il file CSV sorgente utilizzando la classe Merger
            using (var merger = new GroupDocs.Merger.Merger(Constants.SAMPLE_CSV))
            {
                // Aggiungi un altro file CSV da unire
                merger.Join(Constants.SAMPLE_CSV_2);
                
                // Unisci i file CSV e salva il risultato in 'merged.csv'
                merger.Save(outputFile);
            }

            Console.WriteLine("Unione dei file CSV completata con successo.");
            Console.WriteLine($"Controlla l'output in {outputFolder}");
        }
    }
}

In questo frammento di codice:

  • La classe Merger viene istanziata con il percorso del primo file CSV.
  • Il metodo Join viene chiamato per includere un altro file CSV.
  • Il file finale unito viene salvato con il metodo Save.

Come dividere file CSV

Dividere un grande file CSV in pezzi più piccoli e gestibili è altrettanto fondamentale per la governance e l’analisi dei dati. Questo è particolarmente utile quando è necessario isolare punti dati o gestire le dimensioni dei file per l’elaborazione. Con la libreria GroupDocs.Merger per .NET, dividere file CSV è facile quanto unire. Di seguito sono riportati i passaggi per dividere un file CSV in documenti separati:

  1. Definisci il formato di output: Specifica la convenzione di denominazione per i file di output (ad esempio, line_1.csv, line_2.csv, ecc.).
  2. Usa il metodo Split: Applica questo metodo della classe Merger, insieme alle opzioni appropriate che determinano come deve avvenire la suddivisione.
  3. Gestisci l’output: Dopo la suddivisione, avrai ogni riga o segmento specificato come un file separato.

Ecco come puoi ottenere questo con C#:

// Importa i namespace necessari
using System;
using System.IO;
using GroupDocs.Merger.Domain.Options;

namespace GroupDocs.Merger.Examples.CSharp.BasicUsage
{
    /// <summary>
    /// Questo esempio dimostra come dividere un file CSV in documenti separati.
    /// </summary>
    public class SplitCsv
    {
        public static void Run()
        {
            Console.WriteLine("=======================================================================");
            Console.WriteLine("Esempio Uso di Base: SplitCsv");
            Console.WriteLine();

            // Definisci il percorso del file CSV
            string filePath = Constants.SAMPLE_CSV;
            // Definisci il percorso di output con un modello di denominazione
            string filePathOut = Path.Combine(Constants.GetOutputDirectoryPath(), "line_{0}.csv");

            // Crea opzioni di suddivisione per definire come dividere
            TextSplitOptions splitOptions = new TextSplitOptions(filePathOut, new int[] { 1, 2, 3 });

            using (Merger merger = new Merger(filePath))
            {
                // Dividi il file CSV secondo le opzioni specificate
                merger.Split(splitOptions);
            }

            Console.WriteLine("Il documento sorgente è stato suddiviso con successo.");
            Console.WriteLine($"Controlla l'output in {filePathOut}.");
        }
    }
}

In questo esempio:

  • Lo script segmenta i dati in base ai numeri di riga specificati e salva ogni segmento come un nuovo file CSV.
  • La classe TextSplitOptions consente una configurazione flessibile su come deve avvenire la suddivisione.

Vedi anche

Per ulteriori informazioni e risorse, dai un’occhiata ai seguenti link:

Puoi scaricare una prova gratuita da releases.groupdocs.com e ottenere una licenza temporanea qui per provare la nostra libreria senza restrizioni.

Esempi di Codice

Per darti una migliore comprensione di come utilizzare efficacemente la libreria GroupDocs.Merger per .NET, ecco alcuni esempi pratici che mostrano l’unione e la divisione di file CSV. Questi frammenti possono essere facilmente adattati per soddisfare le tue specifiche esigenze di elaborazione dei dati.

Esempio: Unire più file CSV

Questo esempio dimostra come unire più file CSV in un unico file utilizzando il pacchetto GroupDocs.Merger. Assicurati che i percorsi dei tuoi file di esempio siano impostati correttamente.

using System;
using System.IO;

namespace GroupDocs.Merger.Examples.CSharp.BasicUsage
{
    internal static class MergeMultipleCsvFiles
    {
        public static void Run()
        {
            Console.WriteLine("Unendo più file CSV.");

            // Definisci la cartella di output e il nome del file di output per il CSV unito
            string outputFolder = Constants.GetOutputDirectoryPath();
            string outputFile = Path.Combine(outputFolder, "merged_result.csv");
            
            // Inizia il processo di unione
            using (var merger = new GroupDocs.Merger.Merger(Constants.SAMPLE_CSV))
            {
                merger.Join(Constants.SAMPLE_CSV_2); // Aggiungi il secondo file CSV
                merger.Join(Constants.SAMPLE_CSV_3); // Aggiungi il terzo file CSV
                merger.Save(outputFile); // Salva il risultato combinato
            }

            Console.WriteLine($"File CSV uniti con successo in {outputFile}");
        }
    }
}

Esempio: Dividere un file CSV in righe individuali

In questo frammento, divideremo un grande file CSV in più file più piccoli, ciascuno contenente righe specificate. Questo può essere utile per elaborare grandi set di dati o distribuire il carico di lavoro.

using System;
using System.IO;
using GroupDocs.Merger.Domain.Options;

namespace GroupDocs.Merger.Examples.CSharp.BasicUsage
{
    public class SplitCsvToLines
    {
        public static void Run()
        {
            Console.WriteLine("Dividendo un file CSV in file di righe individuali.");

            // Specifica il percorso del file CSV sorgente
            string filePath = Constants.SAMPLE_CSV;
            // Definisci il modello di denominazione del file di output per il risultato della suddivisione
            string outputFilePath = Path.Combine(Constants.GetOutputDirectoryPath(), "line_{0}.csv");

            // Imposta le opzioni di suddivisione in base ai numeri di riga desiderati
            TextSplitOptions splitOptions = new TextSplitOptions(outputFilePath, new int[] { 1, 2, 3 });

            using (Merger merger = new Merger(filePath))
            {
                merger.Split(splitOptions); // Dividi il file in base alle opzioni
            }

            Console.WriteLine($"File sorgente suddiviso con successo in file di righe individuali.");
        }
    }
}

Vedi anche

Per ulteriori informazioni e risorse tecniche, controlla i link qui sotto:

Informazioni su Prova Gratuita e Licenza Temporanea

Puoi scaricare una versione di prova gratuita di GroupDocs.Merger da releases.groupdocs.com. Per coloro che considerano una valutazione più ampia, possono anche acquisire una licenza temporanea qui. Questa licenza temporanea ti consente di testare la nostra libreria senza alcuna limitazione, assicurandoti di poter esplorare appieno le sue capacità.