Da CSV a DOC, PDF, HTML, TXT, XLS, DBF, XML o formati OpenOffice tramite linea di comando
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total CSV ConverterX funziona come applicazione client-server autonoma o come servizio web. Motore multithreadato elabora grandi volumi alla massima velocità. Compatibile con IIS, Docker, Citrix e Wine.
Scarica la versione di prova gratuita di 30 giorni con tutte le funzionalità. Cerchi la versione desktop? Vedi Total CSV Converter. Altri prodotti su CoolUtils Server Products.
(incluso un periodo di prova GRATUITO di 30 giorni)
(solo $850.00)
string src = @"C:\test\Source.csv";
string dest = @"C:\test\Dest.xlsx";
var cnv = new CSVConverterX();
cnv.Convert(src, dest, "-cXLSX -log c:\\test\\CSV.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Converter\CSVConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.csv";
var outPath = Path.GetTempFileName() + ".xlsx";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"\"{srcPath}\" \"{outPath}\" -cXLSX";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Conversion complete.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("CSVConverter.CSVConverterX")
C.Convert "c:\test\source.csv", "c:\test\dest.xlsx", "-cXLSX -log c:\test\CSV.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("CSVConverter.CSVConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.pdf"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.csv", "C:\www\ASP", "-cpdf -log c:\html.log")
set C = nothing
$src="C:\\test\\test.csv";
$dest="C:\\test\\test.xlsx";
if (file_exists($dest)) unlink($dest);
$c= new COM("CSVConverter.CSVConverterX");
$c->convert($src,$dest, "-cXLSX -log c:\\test\\CSV.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('CSVConverter.CSVConverterX')
src = "C:\\test\\test.csv"
dest = "C:\\test\\test.xlsx"
c.convert(src, dest, "-cXLSX -log c:\\test\\CSV.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("CSVConverter.CSVConverterX")
src = "C:\\test\\test.csv"
dest = "C:\\test\\test.xlsx"
c.convert(src, dest, "-cXLSX -log c:\\test\\CSV.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('CSVConverter.CSVConverterX');
c.Convert('c:\test\source.csv', 'c:\test\dest.xlsx', '-cXLSX -log c:\test\CSV.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("CSVConverter.CSVConverterX");
c.Convert("C:\\test\\source.csv", "C:\\test\\dest.xlsx", "-cXLSX");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.csv"; my $dest = "C:\\test\\test.xlsx"; my $c = CreateObject Win32::OLE 'CSVConverter.CSVConverterX'; $c->convert($src, $dest, "-cXLSX -log c:\\test\\CSV.log"); print $c->ErrorMessage if -e $dest;
"Converto un file CSV in XLS dalla riga di comando di Windows. Ero pronto a installare Office, ma Total CSV Converter X ha completato l'operazione senza bisogno di esso. Un ottimo software, grazie!"
Ron Duggs
Consumer Settlements
"Avevamo bisogno di estrarre diversi file CSV da fogli di lavoro differenti. Abbiamo provato vari convertitori, ma solo questo ha funzionato bene. Grazie!"
Gilbert L.
Independent Developer
"I clienti caricano ogni notte CSV di transazioni in dialetti diversi: separati da virgola in stile USA, da punto e virgola in stile UE, da tabulazioni provenienti da un mainframe legacy. Total CSV Converter X normalizza tutto in XLSX secondo il nostro schema di reporting prima che i dati arrivino al data warehouse analitico. Il wrapper .NET si integra nella nostra pipeline esistente, il throughput si aggira sui 300 file al minuto sul nostro hardware e la CLI è deterministica tra le esecuzioni."
Marek S.
Senior Backend Developer at a fintech
"Abbiamo sostituito una pipeline Excel-Interop che richiedeva Office su ogni VM di conversione. Ora quelle VM eseguono solo CSVConverterX.exe dietro una coda. -Recurse -kfs preserva la gerarchia delle cartelle dei partner in output, e -separator con un carattere personalizzato copre ogni formato di caricamento bizzarro che riceviamo. Headless su Windows Server Core, senza Office, nessuna sorpresa in quattro anni di utilizzo in produzione."
Aoife K.
DevOps Engineer at a logistics SaaS
"Abbiamo integrato Total CSV Converter X nel nostro prodotto di migrazione dati con la Royalty-Free License. La quota una tantum per progetto è stata una frazione di quanto chiedeva Aspose.Cells con un abbonamento per sviluppatore. Il nostro installer distribuisce e registra l'ActiveX, la nostra app lo richiama direttamente e gli utenti finali vedono solo la nostra interfaccia. La limitazione dell'ActiveX a 32 bit ci è costata un paio di giorni di rielaborazione della pipeline, ma il supporto è stato reattivo quando abbiamo chiesto soluzioni alternative."
Tomasz B.
Independent Software Vendor
Development teams that need server-side CSV conversion via ActiveX or command line
Power web-based CSV-to-PDF and CSV-to-Excel tools
Web developers integrate Total CSV ConverterX via ActiveX into ASP or PHP applications to offer CSV conversion as an online service. Users upload CSV files through a browser, the server converts them to PDF, XLS, or HTML on the fly, and delivers the result — all without any desktop software or pop-up windows.
Convert CSV data dumps from ERP systems automatically
Enterprise IT teams deploy Total CSV ConverterX on servers to process CSV exports from SAP, Oracle, and other ERP systems. Scheduled tasks convert nightly data dumps to Excel for finance teams, XML for partner integrations, or DBF for legacy systems — preserving folder structure and handling custom delimiters automatically.
Transform CSV feeds into JSON, XML, or database formats
Data engineering teams use the command line interface to build conversion steps into ETL pipelines. CSV files from APIs, IoT sensors, or log systems are converted to JSON for web services, XML for data warehouses, or SQL-ready formats for direct database import — with full control over data types, separators, and row filtering.
Serve converted reports to multiple users on a network
Total CSV ConverterX runs as a client-server application on a local network, allowing multiple users to request CSV conversions simultaneously. Finance, sales, and operations teams each get their data exports converted to the format they need — PDF for management, XLS for analysts, HTML for dashboards — from a single server installation.
Convert transactional CSV logs to archival PDF and DOC
Regulated industries convert transactional CSV logs and audit trails into PDF or DOC for long-term archival storage. Total CSV ConverterX processes large volumes of files silently on the server with no GUI interruptions, making it ideal for unattended overnight jobs and compliance-driven retention workflows.
Total CSV ConverterX include CSVConverterX.exe, un binario console che puoi pilotare da script, attività pianificate, pipeline ETL o qualsiasi servizio backend che debba trasformare dati CSV e TSV in un formato diverso. Il set di flag corrisponde alla GUI CSVConverter.exe; per il riferimento completo consulta la documentazione da riga di comando. Le ricette qui sotto coprono i casi che sentiamo più spesso dai clienti SDK.
La chiamata più semplice possibile — un file sorgente, un output, un formato di destinazione. Utile per reportistica ad-hoc quando un PDF pulito e impaginato deve atterrare nella casella di posta di qualcuno.
CSVConverterX.exe "C:\reports\sales.csv" "C:\out\sales.pdf" -cPDF
Elabora ogni CSV in una cartella e scrivi i corrispondenti file XLS in una directory di output adiacente. Il wildcard *.csv raccoglie tutto al livello superiore del percorso sorgente.
CSVConverterX.exe "C:\reports\*.csv" "C:\out\" -cXLS
Sostituisci -cXLS con -cODS per puntare a OpenOffice Calc, o -cDBF quando alimenti un database legacy.
Le esportazioni di reportistica spesso arrivano come un albero datato: una cartella per regione, una sottocartella per giorno. -Recurse attraversa le sottodirectory; -kfs ricrea lo stesso albero lato output invece di appiattire tutto in un unico bucket.
CSVConverterX.exe "C:\reports\2026\*.csv" "C:\out\2026\" -cPDF -Recurse -kfs
Le esportazioni Excel in tedesco, francese e altre locale usano punto e virgola invece della virgola perché la virgola è il separatore decimale. -comma imposta il delimitatore di campo per il file di input indipendentemente dal nome del flag.
CSVConverterX.exe "C:\reports\de\*.csv" "C:\out\" -cXLS -comma ";"
I file TSV, le esportazioni dai client SQL e i dump di log usano spesso un tab o una pipe come separatore di campo. Passa il carattere letterale a -comma — per il tab, usa \t.
CSVConverterX.exe "C:\data\*.tsv" "C:\out\" -cXLS -comma "\t"
CSVConverterX.exe "C:\data\*.csv" "C:\out\" -cXLS -comma "|"
Molte esportazioni CSV reali iniziano con alcune righe di metadati (titolo del report, data, suggerimento sul separatore) prima che inizi la tabella vera e propria. -skip elimina quelle righe di preambolo; -fh dice al convertitore che la riga successiva è l'intestazione così i nomi delle colonne si propagano nell'output.
CSVConverterX.exe "C:\reports\*.csv" "C:\out\" -cXLS -skip 3 -fh
Alcune pipeline avvolgono i campi di testo in virgolette singole o backtick invece delle virgolette doppie standard. -quote imposta il carattere che il parser tratta come delimitatore di stringa in input.
CSVConverterX.exe "C:\exports\*.csv" "C:\out\" -cXML -quote "'"
XML è ancora la lingua franca per molte integrazioni B2B e import ERP. Il convertitore scrive un elemento XML per riga CSV, usando i nomi delle intestazioni come tag quando -fh è impostato.
CSVConverterX.exe "C:\reports\orders.csv" "C:\out\orders.xml" -cXML -fh
Quando un worker scrive un file di coda e il convertitore lo consuma, non vuoi codificare ogni percorso sulla riga di comando. -list legge le maschere file (una per riga) da un file di testo — ideale per batch notturni assemblati da un altro script.
CSVConverterX.exe -list "C:\queues\nightly.txt" "C:\out\" -cPDF
Una volta che CSVConverterX.exe gira come servizio o job pianificato, l'unico modo per sapere cosa è successo è il log. -verbosity detail scrive una riga per file invece dei soli errori; -log reindirizza tutti i messaggi su un file così la console rimane silenziosa.
CSVConverterX.exe "C:\reports\*.csv" "C:\out\" -cXLS -log "C:\logs\csvconv.log" -verbosity detail
Aggiungi -do se i file sorgenti devono essere eliminati dopo una conversione riuscita — comodo per flussi di spool-folder dove la coda si svuota man mano che drena.
Aggiornato Fri, 01 May 2026
(solo $850.00)
Scarica la versione di prova e converti i tuoi file in pochi minuti.
Non è richiesta carta di credito o email.