Конвертация данных в кодировку UTF-8
Материал из GedeminWiki
Версия от 19:12, 14 мая 2016; SYSDBA (обсуждение | вклад)
Запись в файл данных в кодировке UTF-8:
Option Explicit Sub SaveXML_UTF8 Const fmCreate = &HFFFF& Const FileName = "c:\temp\test.xml" Dim MS, FS, Creator Set Creator = New TCreator Set MS = Creator.GetObject(nil, "TMemoryStream", "") MS.WriteLn("<?xml version=""1.0"" encoding=""UTF-8""?>") MS.WriteLn("<note>") MS.WriteLn(" <text>" & _ System.ReplaceXMLTags("Кириллический текст cо специальными символами < > "" ' &")) &_ "</text>" MS.WriteLn("</note>") Set FS = Creator.GetObject(Array(FileName, fmCreate), "TFileStream", "") Call System.WIN1251ToUTF8(MS, FS) End Sub
Загрузка из файла данных в UTF-8 и перекодировка в WIN1251:
Option Explicit Sub Macros147012679_591807334 Const fmOpenRead = 0 Const FileName = "c:\temp\test.xml" Dim SS, FS, Creator Set Creator = New TCreator Set FS = Creator.GetObject(Array(FileName, fmOpenRead), "TFileStream", "") Set SS = Creator.GetObject(Array(""), "TStringStream", "") Call System.UTF8ToWIN1251(FS, SS) MsgBox System.ExpandXMLTags(SS.DataString) End Sub