sami guzel

Xml Türkçe Karakter Problemi ve Çözümü

6Nisan
Xml Türkçe Karakter Problemi ve Çözümü

Geçtiğimiz yıl bir haber sitesinde, son dönemlerde çok moda olduğu üzere, manşet haberlerin, ana sayfada flash ile gösterilmesi üzerine bir çalışmaya girdim. Flash bilgim sıfır olduğu için, flash bilgisine güvendiğim birine , makul bir ücret karşılığında böyle bir swf dosyası hazırlattım.

Sistemin çalışma mantığı, flash dosyasının gidip belirlenmiş bir xml dosyasından verileri okuması üzerine kurulu. Sistemi denemek amacıyla elimle xml dosyasını düzeltip, sayfaya baktığımda, herşeyin gayet güzel çalıştığını gördüm.

Bir sonraki adım olarak, xml dosyasını manşet haber eklettirildiğinde, tetiklenerek düzenlenmesi için bir sistem kurdum. Herşey gayet güzel çalışmaya başladı dediğim anda o lanet türkçe karakter sorunu ile karşı karşıya kaldım.

Problemin tam olarak ne olduğunu tespit etmem ( birazda günün yorgunluğundan olsa gerek ) bir kaç saatimi aldı. Sorun, fso ile otomatik olarak create ettiğim xml dosyasındaydı. Varolan ve üzerinde çalıştığım xml dosyası UTF 8 iken, create edilen xml dosyası unicode ya da ansii olarak yaşamına başlıyor sonra da ortalığı duman ediyordu. 

Aynı sorunu yaşayacak olabilenlere bir önlem olarak aşağıya hem kendi problemininin tam olarak çözümünü hem de bu tarz bir problemle karşı karşıya kaldıklarında denemeleri gereken ilk yöntemleri yazacağım. 

1) En basit denemeyi yapın. Xml dosyanızın başına

 <?xml version="1.0" encoding="UTF-8"?>
kodunu yerleştirin.

2) ASP ile xml dosyasını okuyorsanız sayfanızın başına
 

Response.ContentType="text/xml"
Response.Write("<?xml version='1.0' encoding='uft-8'?>")

kodunu ekleyin. Yok eğer php ile okuyorsanız aşağıdaki kodu ekleyin.

header("Content-Type: text/xml; charset=utf-8");

 

3) Hala problem çözülmediyse ve sabit bir xml dosyası ile ( değişmeyecek ) çalışıyorsanız, ftp den bu dosyayı çekin. Notepad ( not defteri ) ile açın. Farklı kaydet dedikten sonra UTF-8 i seçip kaydedin. Türkçe karakter sorunlarını giderip tekrar ftp ye atın, problem hallolacaktır.

4) Benim gibi script ile oluşturduğunuz bir xml dosyasından söz ediyorsak, aşağıdaki kodu kullanın. 

Set Yazalim = Fso.CreateTextFile("" & SiteRootunuz & "\haberler.xml", True, True) 

Buradaki en önemli şey True, True parametreleri. çünkü bu parametreleri atlarsanız, benim gibi unicode problemleri ile uğraşırsınız.

Bunlardan başka bir Xml Türkçe Karakter sorunu olacağını düşünmüyorum. Olursa ya da görürsem buraya ekleyerek güncel tutacağım. 

 



yorum


guvenliresim Güvenlik Kodunu Giriniz
tavsiye


Savaş / 06.03.2010
sana çok teşekkür ederim beni çok büyük bir derten kurtardın

murat / 21.07.2009
set yazılım ile başlayan kodu nereye koyacağız acaba bilgi verirseniz sevinirim tşkler kolay gelsin

Malesef / 21.07.2009
Merhaba Kardes Yorum için Tşkler. Fakat Ben Biraz Acemi Olmamla Beraber Bu Verdiğiniz Kodu Yerleştirdim Ama Problem Hala Devam Ediyor. Birde ilk Verdiğiniz Kodu En Başa Koydum. Set yazilim ile başlayan


Arama


Anket
Aduket Nedir?
  • Ülke İsmi     %3
  • Ryu Hareketi     %80
  • Bir Meyve İsmi     %2
  • Oryuken Gibi Bişey     %7
  • 2000 Yapımı Film     %9
Linkler

RSS

Valid XHTML 1.0 Transitional

Valid CSS!

sami guzel
bill adama

kara thrace

number 6 ( caprica )