Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];

Вниз

Установка кодировки в XML   Найти похожие ветки 

 
shek ©   (2004-05-11 20:28) [0]

Добрый вечер.Подскажите как установить вид кодировки в XML-файле.
При использовании метода IXMLDOMDocument.SetEncoding компилятор выдает ошибку "неизвестная функция".


 
shek ©   (2004-05-12 19:58) [1]

Может вопрос не в ту ветку?


 
Cobalt ©   (2004-05-12 21:44) [2]

А откуда ты взял такой метод SetEncoding?


 
Cobalt ©   (2004-05-13 00:16) [3]

Ага, понял, откуда.
Используй IXMLDocument (Правда, у меня Delphi 7)


 
NAlexey ©   (2004-05-13 09:02) [4]


procedure TForm1.Button1Click(Sender: TObject);

 procedure SetEncoding(Doc: Variant; const Value: String);

 const
   NODE_PROCESSING_INSTRUCTION = $00000007;

 var
   NewDeclaration: Variant;

   function IsPrologExists: boolean;
   begin
     Result :=   (Doc.ChildNodes.Length > 0) and
      (Doc.ChildNodes.Item(0).NodeType = NODE_PROCESSING_INSTRUCTION) and
      (Doc.ChildNodes.Item(0).NodeName = "xml");
   end;
 begin
   NewDeclaration := Doc.CreateProcessingInstruction("xml", Value);
   if IsPrologExists then
     Doc.ReplaceChild(NewDeclaration, Doc.ChildNodes.Item(0))
   else
     Doc.InsertBefore(NewDeclaration, Doc.ChildNodes.Item(0));
 end;

 function CreateXMLDocument: Variant;
 var
   RootNode, ProcInstr: Variant;
 begin
   Result := CreateOleObject("Msxml2.DOMDocument.4.0");
   Result.DocumentElement := Result.CreateElement("BYTE_MANAGEMENT_XMLROOTNODE");
   RootNode := Result.DocumentElement;
   ProcInstr := Result.CreateProcessingInstruction("xml", "version=""1.0"" encoding=""UTF-8""");
   Result.InsertBefore(ProcInstr, RootNode);
 end;

var
 Doc: Variant;
begin
 Doc := CreateXMLDocument;
 Doc.Save("C:\ImHereUTF-8.xml");
 SetEncoding(Doc, "version=""1.0"" encoding=""UTF-16""");
 Doc.Save("C:\ImHereUTF-16.xml");
end;


 
11-ый Джа   (2004-05-13 11:06) [5]

я обычно делаю так:

сначала:
Doc.loadXML("<?xml version="1.0" encoding="UTF-8" ?>");

а дальше как обычно через apendchild...

P.S. может немного по-ламерски, жато работает...


 
shek ©   (2004-05-14 18:53) [6]

А что для XMLDOMDocument нельзя установить тип кодировки?
2 11-ый Джа:
Doc.loadXML("<?xml version="1.0" encoding="UTF-8" ?>"); не работает.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.05.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.035 c
3-1083842843
}|{yk
2004-05-06 15:27
2004.05.30
Две связанные таблицы имеют триггеры на update


1-1084534752
WebErr
2004-05-14 15:39
2004.05.30
Вопрос по Create.


14-1083916661
lehich
2004-05-07 11:57
2004.05.30
диспетчер задач


14-1083767914
}|{yk
2004-05-05 18:38
2004.05.30
Сколько лет еще просуществуют:


14-1083563569
Александр Иванов
2004-05-03 09:52
2004.05.30
Нужны ли русские России?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский