Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

Установка кодировки в 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;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.032 c
1-1084962166
Diogen
2004-05-19 14:22
2004.05.30
Работа с датами ...


7-1080938781
Dmitry M. Volkov
2004-04-03 00:46
2004.05.30
неснимаемое приложение


1-1084822229
zep
2004-05-17 23:30
2004.05.30
maskedit


3-1083260010
gu_est
2004-04-29 21:33
2004.05.30
Отчет в QReport на основе Select в DBGridEh


1-1084778350
Snipers
2004-05-17 11:19
2004.05.30
MessageDlg - не хочет работать





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский