Komut satırı ile XML'i JSON, XML, CSV, PDF'ye dönüştür
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total XML Converter X, XML dosyalarını JSON, CSV, XLSX, PDF, HTML, SQL, DBF, Access ve 10'dan fazla başka biçime dönüştüren sunucu tarafı bir SDK'dır — tam XSLT desteği ile ve sunucuda harici XML kitaplıkları olmadan. Başsız (headless) çalışır: GUI yok, iletişim kutusu yok, açılır pencere yok. Total XML Converter X hem bir komut satırı ikili dosyası hem de bir ActiveX/COM arabirimi ile gelir, bu sayede ASP, PHP, .NET, Python, Ruby, Java ve COM destekli her arka uca kolayca entegre olur. Çıktı biçimleri iki gruba ayrılır:
-xslt ile bir stil sayfası uygulayın — iki adımlı işlem hattı gerekmez
table (tekrar eden öğeleri satırlara genişletir), highlight (insan incelemesi için sözdizimi renkli ağaç), report (tablo tanım dosyasından tablosal rapor)
-Recurse -kfs) destekler, birden fazla XML'yi tek bir PDF'de toplu birleştirir (-combine -sort name) ve gözetimsiz çalıştırmalar için kuyruk dosyası işlemeyi (-list) sağlar. Sunucu dostu bayraklar -msuccess, -merror ve -IgnoreInvalidSource, tek bir bozuk dosyanın toplu işlemi durdurmadan karantina klasörüne yönlendirilmesini sağlar.Program XML'yi doğrudan işler — .NET XML serileştiricisine gerek yok, Saxon veya Xalan kurulumu yok, Windows güncellemesinden sonra msxml bağımlılık sürprizi yok.
Yüksek dönüştürme hızı ve toplu dönüştürmeler basit ve sıkıcılık içermeyen bir süreç sağlar. Ücretsiz deneyin (30 günlük deneme süresi, sınırlama yok) ve gerçekten parasının karşılığını verdiğini görün.
Şu anda desteklenen dosya biçimi dönüşümlerinden bazıları:
|
|
|
(30 günlük ÜCRETSİZ deneme sürümü içerir)
(sadece $750.00)
string src = @"C:\test\Source.xml";
string dest = @"C:\test\Dest.json";
var cnv = new XMLConverterX();
cnv.Convert(src, dest, "-cJSON -log c:\\test\\XML.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\XMLConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.xml";
var outPath = Path.GetTempFileName() + ".json";
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}";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
int sleepCounter = 10;
while(!File.Exists(outPath) && sleepCounter > 0)
{
System.Threading.Thread.Sleep(1000);
sbLogs.AppendLine("sleep...");
sleepCounter--;
}
if (File.Exists(outPath))
sbLogs.AppendLine("Conversion complete successfully.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("XMLConverter.XMLConverterX")
C.Convert "c:\source.xml", "c:\dest.json", "-cJSON -log c:\XML.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("XMLConverter.XMLConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.json"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.xml", "C:\www\ASP", "-cJSON -log c:\XML.log")
set C = nothing
$src="C:\\test\\test.xml";
$dest="C:\\test\\test.json";
if (file_exists($dest)) unlink($dest);
$c= new COM("XMLConverter.XMLConverterX");
$c->convert($src,$dest, "-cJSON -log c:\\test\\XML.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('XMLConverter.XMLConverterX')
src = "C:\\test\\test.xml"
dest = "C:\\test\\test.json"
c.convert(src, dest, "-cJSON -log c:\\test\\XML.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("XMLConverter.XMLConverterX")
src = "C:\\test\\test.xml"
dest = "C:\\test\\test.json"
c.convert(src, dest, "-cJSON -log c:\\test\\XML.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('XMLConverter.XMLConverterX');
c.Convert('c:\test\source.xml', 'c:\test\dest.json', '-cJSON -log c:\test\XML.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("XMLConverter.XMLConverterX");
c.Convert("C:\\test\\source.xml", "C:\\test\\dest.json", "-cJSON");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.xml"; my $dest = "C:\\test\\test.json"; my $c = CreateObject Win32::OLE 'XMLConverter.XMLConverterX'; $c->convert($src, $dest, "-cJSON -log c:\\test\\XML.log"); print $c->ErrorMessage if -e $dest;
"Total XML Converter X kullanımım için mükemmel görünüyor; gerçi yalnızca eski .xml dosyalarını başka biçimlere dönüştürmek için kullanıyoruz. Programı XSLT dosyalarını işleme yeteneği nedeniyle seçtik. 6.000'den fazla XML'imiz vardı ve dönüştürücü işi bir saatten kısa sürede halletti. Teşekkürler!"
Jean Robitaille
Sparktown Christian School
"Partnerlerin XML akışlarını (siparişler, ASN, faturalar) iç JSON şemamıza çeviriyoruz. -xslt ile Total XML Converter X motordur: her partnerin kendi stil sayfası vardır, dönüştürücü onu anında uygular ve JSON doğrudan Kafka'ya düşer. Aynı iş için 2GB RAM tüketen bir Java/Saxon kapsayıcısının yerini aldık. Windows ikili dosyası yaklaşık 60MB kullanıyor ve iki kat verimle çalışıyor."
Lukas R.
Senior Backend Developer at an EDI integration vendor
"Müşterilerimiz, insan denetçileri için PDF olarak işlemek zorunda olduğumuz XBRL/XML uyum başvuruları gönderiyor. -method report ve bir tablo tanım dosyasıyla Total XML Converter X, kendi işleyicimizi yazmadan temiz, sayfalandırılmış PDF çıktısı üretiyor. -msuccess/-merror kuyruk yönlendirmesi, gözetleyici tabanlı işlem hattı için tam ihtiyacımız olan şeydi. Beş yıllık üretimde, hiçbir sürpriz yok."
Carmen V.
DevOps Engineer at a regulatory-reporting platform
"Total XML Converter X'i Royalty-Free License kapsamında veri taşıma aracımıza dahil ettik. Tek seferlik proje başına ücret, Altova MapForce'un geliştirici başına abonelik için istediğinin çok küçük bir kısmıydı. Yükleyicimiz ActiveX'i gönderir ve kaydeder, uygulamamız onu doğrudan çağırır, son kullanıcılar yalnızca kendi arabirimimizi görür. 32 bit ActiveX sınırlaması bize birkaç günlük işlem hattı yeniden çalışmasına mal oldu, ancak geçici çözümler sorduğumuzda destek hızlı yanıt verdi."
Halil B.
Independent Software Vendor
"Müşteriler bize her gece yirmi farklı ERP sisteminden XML dökümleri e-postalıyor. Analistlerin ayrı bir ETL aracı olmadan doğrudan pivot yapabilmesi için her şeyi -detectcell -plain ile XLSX'e düzleştirmek için Total XML Converter X kullanıyoruz. Tipik MB altı dosyalar için donanımımızda saniyede yaklaşık 200 XML verim alıyoruz. CLI çalıştırmalar arasında deterministiktir; aynı giriş, aynı bayraklar, bit düzeyinde aynı baytlar."
Felipe O.
Lead .NET Developer at a SaaS analytics firm
Development teams that convert XML to CSV, JSON, and PDF on servers via ActiveX or command line
Power server-side XML-to-CSV and XML-to-JSON tools
Web developers integrate Total XML ConverterX via ActiveX into ASP or PHP applications. Users upload XML files through a browser, the server converts them to CSV, JSON, or PDF silently with no pop-up messages, and returns the result. Sample code files are included to speed up integration.
Transform XML feeds into formats other systems require
Enterprise IT teams use Total XML ConverterX to bridge systems that speak different data languages. Convert XML exports from one platform into CSV for spreadsheet-based tools, JSON for web APIs, or PDF for human review — all automated via command line with original timestamps preserved.
Batch-convert XML data feeds in scheduled pipelines
Data engineering teams add Total XML ConverterX as a conversion step in ETL workflows. Nightly XML dumps from databases, partner APIs, or IoT systems are converted to CSV for analytics platforms or JSON for data lakes. Folder structure is preserved and errors are logged silently for monitoring.
Format or minify XML documents on the server
Content platforms and publishing systems use Total XML ConverterX to format raw XML into human-readable form for editors, or minify verbose XML to reduce storage and transfer size. Process sophisticated XML structures in batch while keeping the original document hierarchy intact.
Convert XML submissions to PDF reports for auditors
Regulated industries receive or generate XML data for compliance filings. Total XML ConverterX converts these XML files to PDF reports for auditor review or to CSV for import into compliance databases — running unattended on servers with no GUI interruptions and full error logging.
Total XML Converter X, betiklerden, zamanlanmış görevlerden, CI çalıştırıcılarından veya herhangi bir arka uç hizmetinden çalıştırabileceğiniz bir konsol ikili dosyası olan XMLConverterX.exe ile birlikte gelir. Çıktı, veri tarafını (JSON, CSV, Excel, SQL, DBF, Access) ve belge tarafını (PDF, HTML, DOC, RTF, TXT, TIFF, JPEG, PNG) kapsar. Aşağıdaki tarifler, SDK müşterilerinden en sık duyduğumuz senaryoları kapsar.
Mümkün olan en küçük çağrı — bir kaynak, bir çıktı, bir hedef format.
XMLConverterX.exe "C:\inbox\invoice.xml" "C:\out\invoice.pdf" -cPDF
Eski XML'i modern bir JSON hattına beslemenin en hızlı yolu. Maske, klasördeki her XML ile eşleşir; çıktı, girdi başına bir JSON dosyası alır.
XMLConverterX.exe "C:\inbox\*.xml" "C:\out\" -cJSON
-detectcell, rakamların elde edilen çalışma kitabında toplanabilir kalması için verilerden sayısal, tarih ve metin sütunlarını çıkarır. -plain, iç içe geçmiş öğeleri tek bir geniş tabloya düzleştirir.
XMLConverterX.exe "C:\reports\*.xml" "C:\out\" -cExcel -detectcell -plain
Avrupa yerel ayarları, aşağı akış ayrıştırıcıları ve elektronik tablo içe aktarımları farklı ayırıcılar ister. -separator, alan ayırıcısını ayarlar; -comma, tırnak karakterini ayarlar (kesme işareti için #39 gibi karakter kodları kullanın).
XMLConverterX.exe "C:\inbox\*.xml" "C:\out\" -cCSV -separator ";" -comma "\""
Kaynak XML hedef şemayla eşleşmediğinde, önce bir XSLT'den geçirin. -xslt, stil sayfasını her girdiye anında uygular — iki adımlı hat gerekmez.
XMLConverterX.exe "C:\inbox\*.xml" "C:\out\" -cPDF -xslt "C:\xsl\invoice-to-pdf.xsl"
-method bayrağı, XML yapısının nasıl görünür çıktıya dönüşeceğini kontrol eder. table, tekrarlanan öğeleri satırlara genişletir; highlight, sözdizimi renklendirmesiyle XML ağacını işler (insan incelemesi için iyidir); report, bir tablo tanım dosyasına dayanan tablo halinde bir rapor oluşturur.
XMLConverterX.exe "C:\inbox\config.xml" "C:\out\config.pdf" -cPDF -method highlight
XMLConverterX.exe "C:\inbox\orders.xml" "C:\out\orders.xlsx" -cExcel -method report -tables "C:\schemas\orders.tbl"
Alt klasörlerde organize edilmiş veri gölleri ve belge arşivleri için. -Recurse, alt dizinleri dolaşır; -kfs, her şeyi bir kovaya düzleştirmek yerine çıktı tarafında aynı ağacı yeniden oluşturur.
XMLConverterX.exe "C:\datalake\*.xml" "C:\out\" -cJSON -Recurse -kfs
İnceleme veya denetim için bir küçük XML klasörünü tek çok sayfalı bir PDF'de toplayın. -sort name, sırayı tahmin edilebilir tutar.
XMLConverterX.exe "C:\reports\*.xml" "C:\out\daily-report.pdf" -cPDF -combine -sort name
Standart arka uç deseni: bir izleyici dosyaları inbox klasörüne bırakır, dönüştürücü onu temizler, işlenen dosyalar done klasörüne, işleyemediği dosyalar inceleme için quarantine klasörüne düşer. -IgnoreInvalidSource, tek bozuk bir dosyanın tüm partiyi iptal etmesini engeller.
XMLConverterX.exe "C:\inbox\*.xml" "C:\out\" -cJSON -msuccess "C:\done" -merror "C:\quarantine" -IgnoreInvalidSource -threads 0
Yukarı akış bir kuyruk dosyası yazıp dönüştürücü onu tükettiğinde, dosya yolları komut satırında kodlanmamalıdır. -list, bir metin dosyasından (her satıra bir tane) dosya maskelerini okur. Hedef <DATE> ve <TIME> makrolarını kabul eder, böylece her çalıştırma kendi kovasını alır.
XMLConverterX.exe -list "C:\queues\nightly.txt" "C:\out\<DATE>\" -cPDF -log "C:\logs\xmlcx.log" -verbosity detail -logmode append
Güncellendi Fri, 01 May 2026
(sadece $750.00)
-c bayrağı aracılığıyla bunlardan herhangi birini üretebilir.new COM("XMLConverter.XMLConverterX"), .NET'te new XMLConverterX(), Python'da win32com.client.Dispatch, Ruby'de WIN32OLE.new. Alternatif olarak, XMLConverterX.exe komut satırı ikili dosyası herhangi bir süreç, zamanlayıcı veya kabuk betiğinden çağrılabilir. ASP/PHP web yanıtları için ConvertToStream aracılığıyla doğrudan akış da mevcuttur.-xslt "C:\xsl\stylesheet.xsl" kullanın. Çıktı daha sonra -c ile seçilen biçimde yazılır. Bu, aksi halde iki adımlı bir işlem hattı (XSLT işlemcisi + dönüştürücü) olacak şeyi tek bir ikili çağrıya indirger. Bunu fatura biçimleri, EDI çevirileri ve şema eşleme iş akışları için kullanıyoruz.-msuccess "C:\done" başarıyla dönüştürülen dosyaları bir tamamlandı klasörüne taşır, -merror "C:\quarantine" hataları bir karantina klasörüne yönlendirir ve -IgnoreInvalidSource tek bir bozuk dosyanın tüm toplu işlemi durdurmasını engeller. -list kuyruk dosyası girişi ve -log -verbosity detail ile birleştirildiğinde, ikili dosya gözetleyici tabanlı bir arka uç işlem hattına temiz bir şekilde uyar.Ücretsiz deneme sürümünü indirin ve dosyalarınızı dakikalar içinde dönüştürün.
Kredi kartı veya email gerekli değil.