UTF-8-ні кодтау арқылы XML-дің халықаралық таңбаларын қалай дұрыс орындай аламын?

Қазіргі уақытта UTF-8-ге орнатылған кодтаумен Javascript генерациялайтын xml бармыз, және біз кейде кейбір XML-лерде халықаралық кейіпкерлер бар болатын жағдайға жеттік. Мысалға:

<?xml version="1.0" encoding="UTF-8"?>

      



Бұл сияқты халықаралық символдардан шығу браузерде ашылғанда кодтау қатесін береді. xml кодтауды ISO стандартына өзгерту мәселені шешеді, бірақ кодты алу өзгеше болса, xml алушылары оны дұрыс оқуға қабілетсіз деп алаңдаймыз. Қазіргі уақытта біз осы кейіпкерлерді esacpe деп шештік:

<?xml version="1.0" encoding="UTF-8"?>

    



Менің сұрағым - осы кейіпкерлерден құтылудың дұрыс жолы.

1
Мәселе XML-мен емес, айтқым келеді; бұл сіздің редакторыңызды немесе браузеріңізді (немесе екеуін) пайдаланасыз.
қосылды автор Kerrek SB, көзі
(Tangential comment: барлық таңбалар халықаралық немесе олардың ешқайсысы менің ойымша, ¿Cómo ) өте испандық, ал Pat өте халықаралық болып көрінеді.)
қосылды автор Michael Kay, көзі
Сіздің бірінші мысалыңызда қандай браузерлер қате жібереді? IMHO дұрыс болуы керек. Әйтпесе, баста xml кодтау ерекшелігі ешқандай мағынасы болмайды.
қосылды автор Robert, көзі
Неге CDATA-ді UTF-8 деп кодтамаңыз? Бұл «дұрыс» шешім еді, IMHO.
қосылды автор ckruse, көзі
@Robert Барлығы, хром, сафари және өрт сөндіргіші (IE тек қана бір нәрсені елемейді).
қосылды автор ashansky, көзі
@ckruse Бізде CDATA тегтеріне оралған бөлімі бар, CDATA элементіне тікелей кодтауды көрсету тәсілі бар ма?
қосылды автор ashansky, көзі

1 жауаптар

Сіз Javascript-тің UTF-8-ге орнатылған кодтамасы бар xml генерациялағанын жазасыз. Мұны қалай істейсіз?

Нәтижесінде алынған файл шынымен UTF-8 кодталғанын тексердіңіз бе? Мен бұған күмәнданатын боламын - егер сізде қиындық болмаса, дұрыс? Менің болжауымша, кодтауды xml форматында кодтау = «UTF-8» ретінде көрсетуге болады, бірақ файлдарды кодтау шынымен utf-8 емес.

Ең жақсы, Рональд

2
қосылды
hmmm Сіз дұрыс боларсыз, бірақ бұл мәселені қалай шешуге болады?
қосылды автор ashansky, көзі
Менің ойымша, сіз дұрыс екеніңізді көрсеңіз, JavaScript xml жасағаннан кейін оны тексеріп отырсам, оны тегіс мәтінге айналдырады, бұл өз кезегінде UTF-8
қосылды автор ashansky, көзі
Файлды қалай жасайсыз?
қосылды автор ronald, көзі