Як правільна пазбегнуць міжнародных знакаў у XML з кадоўкай UTF-8?

У цяперашні час я Javascript генерыруючага xml з кадоўкай, усталяванай у UTF-8, і мы сутыкнуліся з сітуацыяй, калі мы часам маем некаторыя міжнародныя сімвалы, прысутныя ў XML. Напрыклад:

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

      



Пакінуўшы міжнародныя сімвалы, як гэта дае нам памылку кадавання пры адкрыцці ў браўзэры. Змена кадоўкі XML-стандарт ISO, вырашае гэтую праблему, але мы занепакоеныя тым, што атрымальнікі xml не змогуць прачытаць яго правільна, калі кадыроўка адрозніваецца. У цяперашні час наша рашэння з'яўляецца Esacpe гэтых знакаў наступным чынам:

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

    



Мае пытанні, гэта правільны шлях пра ўцёкі гэтых сымбаляў?

1
Я б сказаў, што праблема не звязаная з XML; гэта з тым, як вы карыстаецеся ваш рэдактар ​​або браўзэр (або абодва).
дададзена аўтар Kerrek SB, крыніца
(Тангенцыйная каментар: .. Як усё сімвалы з'яўляюцца міжнароднымі, або ні адзін з іх не па-мойму, ¿Como здаецца даволі іспанскія, а Pat здаецца даволі міжнародным)
дададзена аўтар Michael Kay, крыніца
Які браўзэр (ы) даюць памылку на першым прыкладзе? ІМХО гэта павінна быць правільным. У адваротным выпадку спецыфікацыя кадоўкі xml у галаве не мела б ніякага сэнсу.
дададзена аўтар Robert, крыніца
Чаму вы не кадзіраваць CDATA, як UTF-8? Гэта было б «правільнае» рашэнне, ІМХО.
дададзена аўтар ckruse, крыніца
@Robert Усе яны, хром, сафары і Firefox (IE толькі збольшага ігнаруе ўсё гэта разам).
дададзена аўтар ashansky, крыніца
@ckruse У нас ёсць гэты раздзел, загорнуты ў CDATA тэгах, ёсць спосаб вызначыць кадыроўку непасрэдна на элеменце CDATA?
дададзена аўтар ashansky, крыніца

1 адказы

Вы пішаце, што Javascript генеруе xml з кадоўкай, усталяванай у UTF-8. Як вы гэта робіце?

Праверылі Ці вы, што атрыманы файл сапраўды UTF-8 закадаваныя? Я накшталт сумняваюся - калі гэта ў вас не будзе ніякіх праблем, праўда? Я мяркую, што вы паказваеце кадоўку ў файле XML, як кадаванне = «UTF-8», але кадыроўка файлаў не вельмі UTF-8.

лепшае, Рональд

2
дададзена
хммм вы можаце быць маюць рацыю, але як я магу выправіць гэтую праблему?
дададзена аўтар ashansky, крыніца
Я думаю, вы маеце рацыю, у тым, як я інспектаванне файл пасля JavaScript быў згенераваны xml з'яўляецца пераўтварэнне яго ў плоскі тэкст, які ў сваю чаргу, не кадуецца UTF-8
дададзена аўтар ashansky, крыніца
Як стварыць файл?
дададзена аўтар ronald, крыніца