Da Excel a CSV

Come convertire Excel in CSV online

I file XLSM sono simili ai formati di file XLM ma si basano sul formato Open XML e supportano le macro. D’altro canto, CSV è un’opzione più praticabile perché CSV è leggibile dall’uomo, il formato CSV è dettato da uno schema semplice e i file CSV possono essere letti utilizzando quasi tutti gli editor di testo. Inoltre, CSV può essere utilizzato per importare direttamente i dati all’interno di varie applicazioni senza apportare modifiche al file di input. In questo articolo, esploreremo i dettagli su come convertire XLSM in CSV.

API di conversione da Excel a CSV

Aspose.Cells Cloud è specificamente sviluppato per consentire agli sviluppatori di modificare o convertire fogli di calcolo Microsoft Excel e OpenOffice nel cloud, senza alcuna dipendenza software. Ora, per iniziare a utilizzare .NET SDK, il primo passaggio è la sua installazione, ed è disponibile per il download su NuGet e GitHub. Eseguire il seguente comando nella finestra del terminale per eseguire l’installazione per NuGet:

nuget install Aspose.Cells-Cloud

Se si utilizza .NET CLI, eseguire il seguente comando:

dotnet add package Aspose.Cells-Cloud

Console del gestore dei pacchetti

Se si utilizza Visual Studio, il pacchetto può essere installato anche tramite Package Manager Console. Eseguire il seguente comando:

PM> Install-Package Aspose.Cells-Cloud

Ora dobbiamo creare un account gratuito sulla dashboard di Aspose.Cloud dove possiamo utilizzare gli account GitHub o Google esistenti oppure fare clic sul pulsante Crea un nuovo account e ottenere le credenziali del cliente.

Da XLSM a CSV in C#

Per eseguire le operazioni di conversione utilizzando il frammento di codice C# .NET, seguire le istruzioni specificate di seguito.

  • Il primo passo è creare un’istanza di CellsApi passando i dettagli ClientID e ClientSecret come argomenti
  • In secondo luogo, definire il file di input, il nome del file risultante e il formato del file risultante
  • In terzo luogo, caricare l’istanza XLSB in File.OpenRead
  • Il passo successivo è inizializzare l’operazione di conversione utilizzando il metodo CellsWorksheetsGetWorksheet(…)
  • Infine, utilizzare File.Create un’istanza per salvare l’output sull’unità di sistema (come specificato nel metodo saveToDisk(…))
// Per esempi completi e file di dati, visitare 
https://github.com/aspose-cells-cloud/aspose-cells-cloud-dotnet/

// Ottieni le credenziali del cliente da https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
        
// crea un'istanza di CellsApi passando ClientID e ClientSecret
CellsApi instance = new CellsApi(clientID, clientSecret);

// nome del file Excel di input
string name = "TestCase.xlsm";
// nome del file risultante
string resultantFile = "converted.csv";

// formato del file risultante
string format = "CSV";

// nome del foglio di lavoro nella cartella di lavoro
string sheetName = "Sheet2";
        
try
{
    // carica il file XLSM dall'unità locale
    using (var file = System.IO.File.OpenRead(@"C:\Users\Downloads\" + name))
    {
        // eseguire la conversione e salvare l'output nell'istanza Stream
        var response = instance.CellsWorksheetsGetWorksheet(name, sheetName, format, null, null, null, null, null); 
        
        if (response != null && response.Equals("OK"))
        {
            // visualizza il messaggio di conferma nella console
            Console.WriteLine("Successfully converted XLSM to CSV !");
            Console.ReadKey();
        }
    
    // chiama il metodo per salvare l'output sull'unità di sistema
    saveToDisk(response, @"C:\Users\shahbnay\Downloads\" + resultantFile);
    }
}catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

// metodo personalizzato per salvare lo streaming sul sistema
static void saveToDisk(Stream responseStream, String resultantFile)
{
    var fileStream = File.Create(resultantFile);
    responseStream.Seek(0, SeekOrigin.Begin);
    responseStream.CopyTo(fileStream);
    fileStream.Close();
}
Anteprima da Excel a CSV

Immagine 4: - Anteprima della conversione da XLSM a CSV.

Convertire Excel in CSV utilizzando i comandi cURL

Aspose.Cells Cloud è sviluppato secondo l’architettura REST, pertanto è facilmente accessibile su qualsiasi piattaforma tramite i comandi cURL. Tuttavia, per garantire l’aspetto della privacy, dobbiamo prima generare un token di accesso JWT basato su Client ID e Client Secret specificati su Aspose.Cloud dashboard. Eseguire il seguente comando per generare il token JWT.

curl -v "https://api.aspose.cloud/connect/token" \
 -X POST \
 -d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
 -H "Content-Type: application/x-www-form-urlencoded" \
 -H "Accept: application/json"

L’approccio più semplice per la conversione è tramite API PostDocumentSaveAs. Basta fornire il nome del file di input e il nome del file risultante e con un singolo comando il lavoro viene completato. Tuttavia, in questo approccio, il primo foglio di lavoro della cartella di lavoro XLSM viene convertito in formato CSV.

curl -v -X POST "https://api.aspose.cloud/v3.0/cells/TestCase.xlsm/SaveAs?newfilename=TestCase.csv&isAutoFitColumns=false" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{}"

Un altro approccio è l’utilizzo dell’API GetWorkBook per eseguire l’operazione di conversione. Fornire input XLSM disponibile nell’archiviazione cloud tramite il parametro name, il valore CSV viene fornito in base al parametro format e il file risultante viene fornito in base al parametro outPath.

curl -X GET "https://api.aspose.cloud/v3.0/cells/TestCase.xlsm?format=CSV&isAutoFit=false&onlySaveTable=false&outPath=Converted.csv" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Il corpo della risposta avrà il seguente output

{
  "FileInfo": {
    "Name": "Converted.csv",
    "Size": 71
  },
  "Code": 200,
  "Status": "OK"
}

Convertire XLSM nel parametro di richiesta

Nel caso in cui sia necessario eseguire la conversione del file XLSM dal disco locale, caricarlo utilizzando Request instance e utilizzare l’API PutConvertWorkBook. Utilizzare il seguente comando per eseguire la conversione.

curl -X PUT "https://api.aspose.cloud/v3.0/cells/convert?format=CSV&outPath=Converted.csv" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"File":{}}

Convertire un foglio di lavoro specifico in CSV

Nel caso in cui sia necessario convertire un foglio di lavoro specifico in formato CSV, provare a utilizzare l’API GetWorkSheetWithFormat e fornire il nome del foglio di lavoro rispetto a un parametro sheetName. Nel caso in cui non forniamo il parametro -o, i valori del foglio di lavoro vengono visualizzati nella console.

curl -v -X GET "https://api.aspose.cloud/v3.0/cells/TestCase.xlsm/worksheets/Sheet2?format=CSV&verticalResolution=0&horizontalResolution=0" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o Resultant.csv
Anteprima della conversione da XLSX a CSV

Immagine 5:- Anteprima dell’output nella console se non viene fornito il parametro del file di output.

Conclusione

In questo articolo, abbiamo discusso i dettagli su come convertire XLSM in CSV. I passaggi di conversione sono stati spiegati per .NET Cloud SDK e abbiamo anche imparato come convertire Excel in CSV utilizzando il comando cURL. Si prega di notare che i nostri SDK sono open source e hanno una licenza MIT. È possibile utilizzarli e persino personalizzarli in modo assolutamente gratuito. Il codice sorgente completo è disponibile su GitHub.

Ultimo ma non meno importante, è possibile accedere alla Cloud API anche tramite l’interfaccia Swagger all’interno di un browser web.

Articoli correlati

Ti consigliamo di visitare i seguenti link per saperne di più