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ı:
|
|
|
LLM ajanları (Claude, ChatGPT, Cursor, Cline) ve retrieval çerçeveleri (LangChain, LlamaIndex, Haystack) ham XML'i iyi okuyamaz — iç içe etiketler ve öznitelikler gömme modelleri için gürültüdür. Total XML Converter X, XML'i yapılandırılmış frontmatter ve isteğe bağlı bir Docling uyumlu sidecar ile GitHub-Flavored Markdown olarak yazar; böylece bir XML belgesi vektör deponuza tek bir devasa açılı parantez dizisi olarak değil, eleman hiyerarşisi Markdown başlıklarına eşlenmiş ve tekrarlanan elemanlar tablolara dönüştürülmüş temiz bir bölüm bilinçli metin temsili olarak iner.
Markdown çıktısını hedeflediğinizde elde ettikleriniz:
# olur, alt elemanlar derinliğe göre ## / ### / #### olur; öznitelikler her başlığın altında doğrudan bir anahtar-değer listesi olarak render edilir
table render yöntemi Markdown için devreye girer: aynı etikete ve özdeş alt şekle sahip kardeş elemanlar, otomatik algılanan tipli sütunlarla tek bir tabloda satırlar haline gelir
-xslt stylesheet.xsl uygulayın; diğer çıktı biçimleri için kullanılan aynı tek adımlı hat
source_file, format (MIME), root_element, namespaces, element_count, derinlik, algılanan şema (XSD/DTD referans verildiğinde), generator, created ve köken için binary_hash
.docling.json sidecar — Docling şemalı JSON; otomatik algılanan tablolardan tipli sütunlar (EUR, pcs, % gibi birimlerle), kaynak XML'e geri eleman başına çapalar (XPath), ad alanı haritası ve bölücünüzün okuyabileceği bir chunks_hint dizisi
Bu, CoolUtils RAG Adapter'dır — her Total Converter X ürünü tarafından paylaşılan birleşik bir Markdown sözleşmesi. Tam spesifikasyon, örnek .md + .docling.json ve entegrasyon parçacıkları Coolutils Converter X — RAG Adapter sayfasında bulunur.
(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
ActiveX veya komut satırı aracılığıyla sunucularda XML'i CSV, JSON ve PDF'e dönüştüren geliştirme ekipleri
Sunucu taraflı XML'den CSV'ye ve XML'den JSON'a araçları güçlendirin
Web geliştiricileri, Total XML ConverterX'i ActiveX aracılığıyla ASP veya PHP uygulamalarıyla entegre eder. Kullanıcılar XML dosyalarını tarayıcı üzerinden yükler, sunucu bunları açılır mesaj olmadan sessizce CSV, JSON veya PDF'e dönüştürür ve sonucu iletir. Entegrasyonu hızlandırmak için örnek kod dosyaları dahildir.
XML beslemelerini diğer sistemlerin gerektirdiği formatlara dönüştürün
Kurumsal BT ekipleri, farklı veri dillerinde konuşan sistemler arasında köprü kurmak için Total XML ConverterX'i kullanır. Bir platformdan gelen XML dışa aktarmalarını elektronik tablo tabanlı araçlar için CSV'ye, web API'leri için JSON'a veya insan incelemesi için PDF'e dönüştürün — özgün zaman damgaları korunarak komut satırı aracılığıyla tamamen otomatik.
Zamanlanmış hatlarla XML veri beslemelerini toplu dönüştürün
Veri mühendisliği ekipleri, ETL iş akışlarına dönüştürme adımı olarak Total XML ConverterX ekler. Veritabanlarından, iş ortağı API'lerinden veya IoT sistemlerinden gelen gecelik XML dökümleri analitik platformlar için CSV'ye veya veri gölleri için JSON'a dönüştürülür. Klasör yapısı korunur ve hatalar sessizce izleme amacıyla kaydedilir.
Sunucuda XML belgelerini biçimlendirin veya sıkıştırın
İçerik platformları ve yayıncılık sistemleri, ham XML'i editörler için insan tarafından okunabilir forma dönüştürmek ya da depolama ve aktarım boyutunu azaltmak için ayrıntılı XML'i sıkıştırmak amacıyla Total XML ConverterX'i kullanır. Karmaşık XML yapılarını toplu olarak işleyin; orijinal belge hiyerarşisi bütünüyle korunur.
XML sunumlarını denetçiler için PDF raporlarına dönüştürün
Düzenlemeye tabi sektörler, uyumluluk dosyalamaları için XML verisi alır veya üretir. Total XML ConverterX, bu XML dosyalarını denetçi incelemesi için PDF raporlarına veya uyumluluk veritabanlarına aktarım için CSV'ye dönüştürür — GUI kesintisi olmadan sunucularda gözetimsiz çalışır ve tam hata günlüğü tutar.
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 Thu, 11 Jun 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..md hedefleyin; dönüştürücü XML'in öğe hiyerarşisini Markdown başlıkları olarak yazar: kök #, alt öğeler derinliğe göre ##/###/#### olur, öznitelikler her başlığın altında bir anahtar-değer listesi olarak görünür. Aynı etikete ve aynı alt şekle sahip tekrarlanan kardeş öğeler otomatik olarak algılanır ve XML-to-XLSX için kullanılan aynı render ile tipli sütunlara sahip GFM tabloları olarak render edilir. Bir YAML frontmatter bloğu source_file, root_element, namespaces, element_count, algılanan şema (XSD/DTD referans alındığında) ve bir ikili karma taşır. Bu, CoolUtils RAG Adapter'ın bir parçasıdır — aynı Markdown sözleşmesi her Total Converter X ürünü tarafından paylaşılır.binary_hash ve bir chunks_hint dizisi. Komut satırında -Docling ile etkinleştirin.-cMD -Docling ile birlikte -xslt "C:\xsl\reshape.xsl" geçirin; XSLT her girişe anında uygulanır, ardından sonuç Markdown olarak yazılır. Bu, aksi halde iki adımlı bir ardışık düzen (XSLT işlemcisi + dönüştürücü) olacak şeyi tek bir ikili çağrıya indirger — belirli bir normalleştirilmiş şekilde bir RAG dizinine inmesi gereken EDI çevirileri, fatura biçimleri ve şema eşleme iş akışları için yararlıdır..md dosyası, YAML frontmatter bloğuna sahip düz GFM'dir, bu nedenle LangChain'in UnstructuredMarkdownLoader'ı, LlamaIndex'in MarkdownReader'ı, Haystack'in MarkdownToDocument'ı ve Claude Code'un MCP dosya araçları onu doğrudan okur. Öğe XPath'leri sidecar'a kaydedildiğinden, modelin cevabındaki bir atıf tam kaynak öğesine geri çözülebilir. Claude, ChatGPT veya herhangi bir sohbet arayüzü için Markdown'ı olduğu gibi bağlama yapıştırabilirsiniz.Ü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.