2014-02-12 3 views
3

Мне нужно сгенерировать XML-файл, и у меня есть его схема в формате XSD.Delphi: привязка данных XML (кодирование)

Я создал классы, используя XML Data Binding Wizard, но:

Одним из требований является то, что XML имеет тег кодирования установлен в «UTF-8».

Я делал это раньше при создании XML, непосредственно IXMLDocument, делая это:

var xml:IXMLDocument; 
. 
. 
xml.Encoding:='utf-8'; 

XML, первая линия становится <? xml version = "1.0" encoding = "utf-8"? >

Но теперь, с привязкой данных мастера, я пытался что-то подобное:

var xml:IXMLAuditFile; 
. 
. 
xml.OwnerDocument.Encoding:='utf-8'; 

Но что кодирование не отображается в том XML-файле: <? xml version = "1.0"? >

Есть ли другое место, где я должен устанавливать кодировку при использовании привязки данных XML?

Спасибо Нуну

+6

UTF-8 является кодировкой по умолчанию для XML, не нужно указывать его явно – pf1957

+0

Технически, нет необходимости. Но люди, которые требуют этот файл (правительство), говорят мне, что он должен быть там. И если программное обеспечение не отвечает их требованиям, сертификация, которую они сделали, может быть отменена. Итак, мне придется положить его туда, даже если это просто для их глаз! :) – nunopicado

+4

Итак, они хотят сертифицировать вас, используя требование, которое специфицирует сам спецификатор XML, не требуется? Их собственное программное обеспечение, которое будет потреблять ваш XML, недостаточно умен, чтобы соответствовать той же спецификации, что и все остальные? Это правительство думает о вас. –

ответ

1

Просто нашел ответ на свой вопрос.

Когда я показываю сгенерированный XML в TMemo, кодировка не отображается. Но когда я сохраняю его в файле, добавляется кодировка, если у меня есть свойство xml.Encoding.

Спасибо всем.

Смежные вопросы