JSON dosyasını XML biçimine dönüştürün JavaScript Object Notation ↔ Extensible Markup Language Ücretsiz Çevrimiçi Güvenli
Bir JSON dosyası bırakın, XML alıp gidin. Okuma da yazma da burada, tarayıcınızda olur; dosya cihazınızdan çıkmaz — geçişin neyi koruduğu ve neyi koruyamadığı ise aşağıda yazılıdır, sizin keşfetmenize bırakılmaz.
Dosyanızı dönüştürün
Buraya bir JSON dosyası bırakın ya da bir tane seçin.
Dosyanız bu cihazdan çıkmaz. Her şey tarayıcınızda çalışır.
Hiçbir şey yüklenmez
JSON biçiminden dönüştürme
JSON biçimine dönüştürme
Bu biçimler nereden geliyor
CSV en eskisi ve en az standartlaşmış olanıdır: metin satırları hâlinde yazılmış bir çizelge; 1970'lerden beri kullanılıyor ve ancak 2005'te yazıya döküldü — o zamana dek her program ayracın ne olduğuna ve tırnağın ne vakit konacağına kendi başına karar vermişti. XML, 1998'de SGML'den çıktı; katı bir yapı taşıması ve bir şemaya karşı denetlenmesi gereken belgeler için. JSON'u Douglas Crockford 2001 dolaylarında JavaScript'in içinden çekip çıkardı; bilerek nesnelere, dizilere, sayılara ve dizgilere indirgedi — ve webi ele geçirmesinin sebebi bu sadeliktir. YAML onun okunur kuzenidir; başka yerde parantezlerin gördüğü işi orada girinti görür. Aralarında çevirirken önemli olan tek şey şudur: CSV düzdür, satır ve sütunlardan bir ızgaradır; JSON, XML ve YAML ise birer ağaçtır.
Onlarla nerede karşılaşırsınız
CSV, bir hesap çizelgesinin dışa aktardığı ve bir muhasebecinin, bir mağaza yazılımının ya da bir banka ekstresinin size uzattığı şeydir. JSON, web hizmetlerinin konuştuğu dildir ve yapılandırma dosyaları giderek onunla yazılır. XML eski kurumsal dizgelerde, faturalandırma standartlarında ve ofis biçimlerinin ta içinde yaşar. YAML, insanların ayarları elle yazdığı yerdir. Aralarında çevirmek, verileri üretildikleri yerden gereksinildikleri yere taşımanın günlük işidir.
Sık sorulan sorular
CSV dosyam Excel'de tek sütun olarak açıldı. Neden?
Çünkü hesap çizelgeniz başka bir ayraç bekliyordu. Excel, bilgisayarın bölge ayarlarındaki liste ayracını izler; virgülün zaten ondalık işareti olduğu her yerde bu noktalı virgüldür — yani kıta Avrupası'nın büyük bölümünde. Virgülle ayrılmış bir dosya o zaman tek bir metin sütunu gibi görünür. Dosyaya çift tıklamak yerine içe aktarma penceresini kullanın ve ayracı açıkça belirtin. 3.5'in kimi zaman tarih olarak gelmesinin sebebi de aynı bölge ayarıdır.
İç içe JSON'um neden derli toplu bir hesap çizelgesine dönüşmüyor?
Çünkü hesap çizelgesi düzdür, JSON ise bir ağaçtır. Bir satır her sütun için bir değer taşır; bir JSON nesnesi ise bir alanın içindeki bir listenin içinde başka bir liste taşıyabilir. Çevirmek, bunu nasıl yassılaştıracağınızı seçmek demektir: ya iç içe adları tek bir uzun sütun başlığında birleştirmek, ya da ana satırı her çocuk için bir kez yinelemek. İkisi de ödündür ve hiçbiri kendiliğinden geri alınamaz — bu yüzden hesap çizelgesinden özgün biçime dönmek genellikle insan kararı ister.
Dosya kalite yitirir mi?
İki biçimin neyi tutabildiğine bağlıdır. Aynı şeyi saklayan biçimler arasında çevirmek — PNG'den BMP'ye, WAV'dan FLAC'e — hiçbir şey yitirmez. Yer kazanmak için bilgi atan bir biçime çevirmek, örneğin JPEG ya da MP3'e, her seferinde biraz yitirir; geri çevirmek de onu geri getirmez. Bir seçim varsa, bu sayfa en küçük dosyayı üretmek yerine özgün kaliteyi korumaya meyleder.
Dosyam bir yere yükleniyor mu?
Hayır. Çevrim, kendi makinenizde, tarayıcınızın içinde olur; dosya oradan hiç çıkmaz ve burada onu alabilecek bir sunucu zaten yoktur. Büyük bir dosyayı bir yüklemenin değil kendi belleğinizin sınırlamasının ve çevirdiğiniz hiçbir şeyin kimsenin kayıtlarında — bizimkiler dahil — görünememesinin sebebi budur. Ses ve film araçları, çevrim motorunu ilk kullanımda bu siteden indirir — otuz megabayt kadar, bir kez; ondan sonra iş yine tümüyle sizin makinenizde yapılır.
İnsanlar JSON'u neden XML'e dönüştürür
JSON modern web kodunun dilidir: hafif, okunaklı ve her programlama dili tarafından anlaşılır. XML daha eski ve daha resmî kardeştir; açılıp kapanan etiketlerle yazılır ve şaşırtıcı sayıda yerde hâlâ zorunlu biçimdir. Muhasebe programları, vergi ve gümrük sistemleri, kamu ihale platformları, ürün besleme dosyaları, yayıncılık iş akışları, kurumsal yazılım ve eski web hizmetlerinin uzun bir listesi XML bekler. Verileriniz JSON'da olduğunda ve onu alması gereken sistem XML konuştuğunda bir dönüşüm gerekir. İnsanların JSON'u XML'e dönüştürmesinin nedeni budur: bilgi bir biçimdedir ve hedef diğerini ister.
Durumlar yaygındır. Verileri modern bir uygulamadan yıllar önce kurulmuş bir hizmete göndermesi gereken bir geliştirici. Ürünleri JSON olarak dışa aktaran ve XML isteyen bir pazar yerine bir besleme dosyası vermesi gereken bir mağaza. Bir aracın tercih ettiği işaretleme biçiminde bir yapılandırmaya ihtiyaç duyan bir ekip. Aynı verinin iki gösterimde nasıl göründüğünü görmek isteyen bir öğrenci. Her durumda içerik hazırdır ve yalnızca gösterim farklıdır.
Bu sayfa JSON'u XML'e tarayıcınızda dönüştürür. Dosyanız burada okunur ve yazılır; bu yüzden cihazınızdan asla çıkmaz; bu, siparişler, faturalar ve özel diğer her şey için önemlidir. Ve sayfa, geçişin neyi koruduğunu ve neyi koruyamadığını sizi keşfetmeye bırakmak yerine önceden söyler. Aşağıda dönüşümün nasıl çalıştığını, adların, listelerin ve niteliklerin nasıl ele alındığını ve XML'in kabul edemediği anahtarlar için ne yapılacağını bulacaksınız.
Dönüşüm nasıl çalışır
Tüm ağaç taşınır
JSON dosyanız tarayıcınızın içinde okunur ve tüm ağaç XML olarak yazılır. Nesneler öğe olur, anahtarları alt öğelerin adları olur ve değerler içerideki metin olur. JSON'daki iç içelik XML'deki iç içeliktir; böylece süslü parantezlerle gördüğünüz biçim, etiketlerle elde ettiğiniz biçimdir.
Belge tek anahtarın adını alır
Bir XML belgesinin tam olarak bir kök öğesi olması gerekir. JSON nesnenizin tek bir anahtarı varsa o anahtar belgeyi adlandırır. Bu elverişli durumdur: JSON'a ve geri alınan bir XML dosyası kendine benzer, çünkü kök öğe tek anahtar olur ve kök öğe olarak geri döner. JSON'unuzun üstte birkaç anahtarı varsa dönüştürücü, sonucun iyi biçimlendirilmiş olması için onları bir kök öğeye sarar.
Listeler öğeyi tekrarlar
Bir dizi öğesini tekrarlar. Üç kayıttan oluşan bir liste tutan products anahtarı, art arda üç product öğesi verir; XML'in bir listeyi ifade etme biçimi budur. Sıra korunur.
Korunanlar
Tüm ağaç
Her nesne, her liste ve her değer taşınır. Hiçbir şey atılmaz ve iç içelik özgünün iç içeliğidir.
Nitelikler, @ aracılığıyla
@ ile başlayan bir anahtar bir nitelik olur. @id anahtarı ve name anahtarı olan bir kayıt, id niteliği olan bir öğe ve name alt öğesi verir. Bu, ters dönüşümün kullandığı aynı geleneğidir; bu yüzden JSON'a ve geri alınan XML niteliklerini korur.
Sıra
Anahtarlar JSON'da göründükleri sırayı korur; böylece XML'deki öğeler kaynağın sırasını izler.
JSON'u XML'e dönüştürmeden önce bilmeniz gerekenler
Her JSON anahtarı bir sözcük olabilir; bir XML adı olamaz
Her JSON anahtarı bir sözcük, bir sayı ya da boşluklu bir ifade olabilir. Bir XML öğe adı olamaz: bir harfle ya da alt çizgiyle başlamalıdır ve harf, rakam, tire, alt çizgi ve nokta içerebilir, ama boşluk içeremez. Yasal bir ad olmayan bir anahtar bir tanesine dönüştürülerek bozulmaz. item name="özgün anahtar" biçiminde yazılan, name niteliği olan bir item öğesi olur; böylece özgün dosyada kalır ve hâlâ bulunabilir. Hiçbir şey sessizce yeniden adlandırılmaz.
Hiçbir şey ad alanına konmaz, hiçbir şeye şema verilmez
Hiçbir şey ad alanına konmaz ve hiçbir şeye şema verilmez. Sonuç iyi biçimlendirilmiştir, doğrulanmış değil. Herhangi bir XML okuyucusu tarafından okunur, ama bir vergi sisteminin ya da bir pazar yerinin gerektirdiği belirli yapıyı karşılayıp karşılamadığı ayrı bir sorudur ve yalnızca alan taraf yanıtlayabilir. Bir şema belirli öğe adları gerektiriyorsa JSON anahtarlarını önceden onlarla eşleştirmeniz gerekir.
Değerler metindir
XML'de tür yoktur: etiketlerdeki her değer metindir. Sayılar, true, false ve null metinleri olarak yazılır. XML'i okuyan program onları uygun gördüğü gibi yorumlamalıdır.
Burada JSON'u XML'e nasıl dönüştürürsünüz
Dosyanızı ekleyin
JSON dosyasını sayfaya bırakın ya da cihazınızdan seçin. Tarayıcınızın içinde okunur ve yüklenmez.
Dönüştürün
Düğmeye basın. Sıradan boyutta bir dosya bir an alır. Bitene kadar sayfayı açık bırakın.
İndirin ve kontrol edin
XML'i indirin ve bir metin düzenleyicide ya da tarayıcıda açın. Başa ve sona bakın ve öğe adlarının beklediğiniz gibi olduğunu ve niteliklerin amaçladığınız yerde göründüğünü kontrol edin.
JSON ve XML'e daha yakından bakış
Bir ağacı yazmanın iki yolu
JSON da XML de bir değer ağacını betimler. JSON onu süslü ve köşeli parantezlerle yazar ve yalnızca nesneleri, listeleri, dizgileri, sayıları, mantıksal değerleri ve null'u bilir. XML onu açılıp kapanan etiketlerle yazar ve nitelikler, ad alanları ve karışık içerik ekler. Kayıtlar ve ayarlar gibi veriler için iyi örtüşür, metin ile işaretlemenin iç içe geçtiği belgeler için kötü örtüşür.
Gelenekler neden önemli
JSON'da nitelik, kök öğe ve bir öğeyi tekrarlama kavramı yoktur. Bu yüzden her dönüşüm geleneklere ihtiyaç duyar: nitelikler için @, kök için tek anahtar, listeler için öğelerin tekrarı. Burada kullanılan gelenekler basit ve tutarlıdır ve XML'den JSON'a giderken kullanılanlarla eşleşir; bu, bir gidiş-dönüşün yaygın durumlarda işlemesini sağlayan şeydir.
Boş değerler
Boş bir dizgi ve bir null ikisi de boş bir öğeyle sonuçlanır. Fark alan sistem için önemliyse JSON'u XML'e dönüştürmeden önce bunu verilerde, örneğin ayrı bir bayrakla belirtin.
Ayrıntılı yaygın durumlar
Pazar yerleri ve karşılaştırma siteleri için besleme dosyaları
Birçok platform XML ile ürün besleme dosyaları ister. Mağaza yazılımınız JSON dışa aktarıyorsa JSON'u XML'e dönüştürün, öğe adlarını platformun şartnamesiyle karşılaştırın ve yükleyin.
Eski hizmetler ve kurumsal sistemler
SOAP ve ilk API'ler çağında kurulan sistemler XML bekler. Modern bir uygulama JSON üretip onlar için dönüştürtebilir.
XML'i tercih eden araçlar için yapılandırma
Bazı derleme araçları, içerik sistemleri ve masaüstü programları ayarlarını XML'den okur. JSON olarak yazılmış bir yapılandırma ihtiyaç duydukları biçime çevrilebilir.
Öğrenmek ve karşılaştırmak
Aynı veriyi iki gösterimde görmek, nasıl farklılaştıklarını anlamanın iyi bir yoludur. Küçük bir JSON yapıştırın, dönüştürün ve ikisini yan yana karşılaştırın.
JSON'u XML'e dönüştürmeden önce pratik öğütler
JSON'un geçerli olduğunu kontrol edin
Başıboş bir virgül ya da eksik bir tırnak dönüşümü durdurur. Sayfa bir hata bildirirse dosyayı JSON sorunlarını vurgulayan bir düzenleyicide açın ve gösterdiği satırı düzeltin.
Anahtarları yasal öğe adları yapın
XML'in bir şemaya karşı kontrol edileceğini biliyorsanız geçerli adlar olan ve şemayla eşleşen anahtarlar kullanın. Aksi hâlde dönüştürücü onları item öğeleri olarak güvende tutar; bu doğrudur, ama alanın beklediği şey olmayabilir.
Tek bir üst düzey anahtar seçin
XML'inizin kök öğesinin belirli bir adı olmasını istiyorsanız JSON'u XML'e dönüştürmeden önce verilerinizi o tek anahtarlı bir nesneye sarın.
Büyük dosyalar
Her şey cihazınızda çalışır; bu yüzden çok büyük bir dosya bellek gerektirir. Birçok megabaytlık dosyalar için bir bilgisayar kullanın ve sayfa zorlanırsa veriyi bölün.
İnsanların dönüştürmeden önce sorduğu sorular
Kök öğeyi ne adlandırır?
Tek anahtarlı bir nesne belgeyi o anahtarın adıyla adlandırır.
Bir niteliği nasıl elde ederim?
Anahtarı @ ile başlatın. Öğenin bir niteliği olur.
İçinde boşluk olan bir anahtara ne olur?
Yasal bir öğe adı olmadığı için özgün anahtarı tutan bir name niteliği olan bir item öğesi olur. Hiçbir şey kaybolmaz.
XML bir şema kontrolünden geçecek mi?
Sonuç iyi biçimlendirilmiştir, doğrulanmış değil. Belirli bir şemayı karşılayıp karşılamadığı öğe adlarınıza ve yapınıza bağlıdır.
Dosyam yükleniyor mu?
Hayır. Dönüşüm tarayıcınızda çalışır ve dosya cihazınızdan asla çıkmaz.
JSON'a geri dönebilir miyim?
Evet. XML'den JSON'a bir XML ağacını, niteliklerle aynı geleneklerle geri okur.
JSON'u XML'e dönüştürürken akıllıca seçim
XML gerçekten gerekli mi?
Alan sistem JSON kabul ediyorsa JSON kullanın. Yalnızca XML gerekli olduğunda dönüştürün.
Diğer hedefler
İnsanların düzenlediği yapılandırma için JSON'dan YAML'a daha rahat okunur. Tablolar için JSON'dan CSV'ye ve JSON'dan XLSX'e elektronik tablolara hizmet eder.
JSON'u koruyun
JSON ana kopyadır. Türleri tutar. Onu koruyun ve XML'i belirli bir alıcı için yapılmış bir kopya olarak ele alın.
Dönüşümden sonra iyi bir sonuç almak
Bir tarayıcıda açın
Bir tarayıcı XML'i daraltılabilir bir ağaç olarak gösterir. Dosyayı açın ve öğeleri genişletin. Yapı beklediğiniz gibi görünüyorsa sağlamdır.
Birkaç kaydı kaynakla karşılaştırın
Ortadan birkaç kayıt alın ve JSON'a karşı kontrol edin. Bir dakika alır ve dönüşümün sadık olduğunu söyler.
Alıcının ihtiyaç duyduğunu ekleyin
Alıcı bir bildirim satırı, bir ad alanı ya da bir stil sayfası göndermesi isterse bunları bir metin düzenleyicide ekleyin. Verinin parçası değildirler ve sizin için yazılmazlar.
JSON'unuzu iyi dönüşecek biçimde hazırlamak
Düzenli yapılar kullanın
JSON'u XML'e dönüştürdüğünüzde düzenli veri en iyi dönüşür: aynı anahtarları paylaşan kayıt listeleri; her anahtar yasal bir ad. Düzensiz veri doğru ama dağınık bir sonuç üretir.
Neyin nitelik olduğuna karar verin
Tanımlayıcılar, kodlar ve bayraklar çoğu zaman XML'de niteliklerdir. Onları JSON'da @ ile işaretleyin; sonuç, bir insanın yazacağı XML'e benzer.
Önce küçük bir parçayla deneyin
Dosyanız büyükse ilk kayıtları bir deneme dosyasına alın ve onu dönüştürün. Sonuca hızlı bir bakış, biçimin beklediğiniz gibi olup olmadığını gösterir.
XML'i alıcısına uydurmak
Önce şartnameye bakın
Bir pazar yeri, bir vergi portalı ya da bir ortak için JSON'u XML'e dönüştürmeden önce ne istediklerini okuyun. Çoğu, beklediği öğelerin, sıralarının ve hangilerinin zorunlu olduğunun bir betimini yayımlar. Anahtar adlarınızı onunla hizalamak JSON'da birkaç dakikaya mal olur ve sonradan başarısız bir yüklemeden tasarruf sağlar.
Sıra önemli olabilir
Bazı XML şemaları öğelerin sabit bir sırada olmasını gerektirir. Dönüştürücü anahtarlarınızın sırasını korur; bu yüzden alıcı bir sırada ısrar ediyorsa JSON anahtarlarını o sırayla yazın. Sonuç tam olarak yazdığınızı izler.
Gerekliyse bildirimi ekleyin
Üstte sürümü ve kodlamayı belirten bir satır gelenekseldir ve bazı alıcılar buna ısrar eder. Verinin parçası değildir; bu yüzden sizin için yazılmaz. Onu elle, ilk öğeden önce bir metin düzenleyicide ekleyin.
Özel karakterlere dikkat edin
Değerlerin içindeki ampersandlar, açılı parantezler ve tırnak işaretleri kaçışlı biçimleriyle yazılır; böylece metin ne içerirse içersin XML geçerli kalır. Onları JSON'da hazırlamanıza gerek yok.
Kabul edilmiş bir örneği saklayın
Alıcı bir dosyayı kabul ettiğinde o dosyanın ve onu üreten JSON'un bir kopyasını saklayın. Sonraki bir yükleme başarısız olduğunda onu işleyenle karşılaştırmak farkı hemen bulur.
Elle düzenlemek yerine dönüşümü tekrarlayın
Veri değiştiğinde JSON'u değiştirin ve JSON'u XML'e yeniden dönüştürün. XML'i elle düzenlemek birbirinden uzaklaşan iki sürüm bırakır.
Gizlilik ve işleme
Yerel dönüşüm veri için neden önemli
Veri dosyaları çoğu zaman özel olanı tutar: müşteriler, siparişler, faturalar, ayarlar. Birçok çevrimiçi dönüştürücü dosyanızı bir sunucuya yükler, işler ve sonucu geri gönderir; bir süre için bir kopya, denetlemediğiniz bir makinede yaşar. Burada işi kendi tarayıcınız yapar; bu yüzden veri cihazınızda kalır.
Ayrıldığınızda ne olur
Sayfayı kapattığınızda dönüştürülen dosya tarayıcıdan kaybolur; bu yüzden önce indirin. Verilerinizle ilgili hiçbir şey saklanmaz.
Bir şey ters giderse
Sayfa dosyanın geçerli JSON olmadığını söylüyor
Başıboş bir virgül, eksik bir tırnak ya da kapanmayan bir parantez olabilir. Dosyayı JSON hatalarını vurgulayan bir düzenleyicide açın ve gösterdiği satırı düzeltin.
Alıcı XML'i reddediyor
Sonuç iyi biçimlendirilmiştir ama doğrulanmamıştır. Onu alıcının şartnamesiyle karşılaştırın ve JSON'un anahtar adlarını ve yapısını ayarlayın.
Büyük bir dosyayla sayfa donuyor
Her şey cihazınızda çalışır ve büyük bir dosya bellek gerektirir. Bir bilgisayarda yeniden deneyin ya da veriyi bölün.
İlgili araçlar
Aynı araç ailesi komşu işleri kapsar. Geri dönmek için XML'den JSON'a kullanın. Yapılandırma dosyaları için JSON'dan YAML'a ve YAML'dan JSON'a ikisi arasında dönüştürür. Tablolar için JSON'dan CSV'ye, CSV'den JSON'a, JSON'dan XLSX'e ve XLSX'ten JSON'a vardır.
Çözümlü bir örnek
Mağaza yazılımınızın 300 ürünü JSON olarak dışa aktardığını ve bir pazar yerinin catalogue adlı bir kök öğeyle bir XML besleme dosyası istediğini varsayalım. Listenizi catalogue tek anahtarlı bir nesneye sarar, dosyayı buraya bırakır ve düğmeye basarsınız. Bir an sonra kökü catalogue olan ve 300 product öğesi tutan bir XML indirirsiniz; anahtarı @id olarak yazdığınız için her birinin id'si bir nitelik olarak durur. Besleme dosyasını yüklersiniz ve pazar yeri onu kabul eder. JSON klasörünüzde kaynak olarak kalır.
Kısa bir kontrol listesi
Dönüştürmeden önce
JSON'un geçerli olduğunu kontrol edin. Kök adını seçin. Nitelikleri @ ile işaretleyin. JSON'u koruyun.
Dönüştürürken
Dosya hazır olana kadar sayfada kalın.
Dönüştürdükten sonra
XML'i açın, öğe adlarını, nitelikleri ve listeleri kontrol edin ve alıcıyla deneyin.
Yaygın hatalar
Sonucun doğrulandığını varsaymak
XML iyi biçimlendirilmiştir, herhangi bir şemaya karşı kontrol edilmemiştir. Onu alıcının kurallarına karşı doğrulayın.
Boşluklu ya da simgeli anahtarlar kullanmak
Name niteliği olan item öğeleri olurlar. Alıcı bekliyorsa yasal adlar kullanın.
JSON'u silmek
Onu koruyun. XML'in tutamadığı türleri tutar.
Verileriniz cihazınızda kalır
Dönüşüm yerel olarak gerçekleşir. Dosyanız kendi tarayıcınız tarafından okunur, orada yeniden yazılır ve XML olarak size geri verilir. Hiçbir şey yüklenmez; bu yüzden bir sunucuda kopya kalmaz ve kimse onu okuyamaz. Özel içerikli veri için JSON'u XML'e dönüştürmenin güvenli yolu budur.
Özet
Burada JSON'u XML'e dönüştürmek için dosyayı bırakın ve düğmeye basın. Tarayıcınızda okunur ve yazılır; bu yüzden dosya cihazınızdan asla çıkmaz. Tüm ağaç korunur. Tek anahtarlı bir nesne belgeyi o anahtarın adıyla adlandırır; böylece JSON'a ve geri alınan bir XML dosyası kendine benzer; bir dizi öğesini tekrarlar; @ ile başlayan bir anahtar bir nitelik olur. Her JSON anahtarı bir sözcük olabilir; bir XML öğe adı olamaz. Yasal bir ad olmayan bir anahtar bir tanesine dönüştürülerek bozulmaz: name niteliği olan bir item öğesi olur; böylece özgün dosyada kalır ve hâlâ bulunabilir. Hiçbir şey ad alanına konmaz ve hiçbir şeye şema verilmez: sonuç iyi biçimlendirilmiştir, doğrulanmış değil.