Конвертация данных в кодировку UTF-8
Материал из GedeminWiki
(Различия между версиями)
SYSDBA (обсуждение | вклад) (Новая страница: «Запись в файл данных в кодировке UTF-8: <syntaxhighlight lang="vbnet"> Option Explicit Sub SaveXML_UTF8 Const fmCreate = &HFFFF& …») |
SYSDBA (обсуждение | вклад) |
||
| Строка 22: | Строка 22: | ||
Set FS = Creator.GetObject(Array(FileName, fmCreate), "TFileStream", "") | Set FS = Creator.GetObject(Array(FileName, fmCreate), "TFileStream", "") | ||
Call System.WIN1251ToUTF8(MS, FS) | Call System.WIN1251ToUTF8(MS, FS) | ||
| + | End Sub | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | Загрузка из файла данных в UTF-8 и перекодировка в WIN1251: | ||
| + | |||
| + | <syntaxhighlight lang="vbnet"> | ||
| + | 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 | End Sub | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Category:Импорт/экспорт данных]] | [[Category:Импорт/экспорт данных]] | ||
Версия 19:12, 14 мая 2016
Запись в файл данных в кодировке 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