В ресурсах программы имеется xml документ.
При попытке загрузить из него список в ListBox, выпадает ошибка "Declared encoding does not match byte order mark".
Ошибка только при запуске проекта по Android. Под Windows все работает нормально.
<?xml version="1.0" encoding="utf-8"?>
<resourсes>
<question>
<item>Данные1 | Описание</item>
<item>Данные2 | Описание</item>
</question>
</resourсes>
procedure Form1.ListBoxItem1Click(Sender: TObject);
var
Stream: TResourceStream;
RootNode: IXMLNode;
i: Integer;
begin
Stream:=TResourceStream.Create(hInstance, 'xmldoc', RT_RCDATA);
mldocument1.xml.LoadFromStream(Stream);
xmldocument1.Active:=true;
xmldocument1.Encoding:='UTF-8';
RootNode := XMLDocument1.DocumentElement;
for i := 0 to RootNode.ChildNodes['question'].ChildNodes.Count - 1 do
begin
Listview1.Items.Add.Text:=(RootNode.ChildNodes['question'].ChildNodes[i].Text);
FreeAndNil(Stream);
end;
xmldocument1.Active:=false;
Stream.Free;
end;