2013-02-21 2 views
0

У меня есть статическая строка в приложении для Android, которая находится в формате xml. Я хочу сохранить файл в некоторой переменной. Один из способов - сохранить это в папке res/string.xml. Но когда я делаю это, я получил эту ошибкуГде хранить статические данные в форме xml?

The processing instruction target matching "[xX][mM][lL]" is not allowed. 

Другой способ - инициализировать строковую переменную этой строкой xml. Но, я думаю, это не очень хороший способ сделать.

Моя XML-строка, как указано ниже:

<?xml version="1.0" encoding="utf-8"?> 
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<soap:Body> 
<DumpStudentData xmlns="http://www.milpahost.com/"> 
<objUserRequest> 
<CourseId xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Milpa.Server.WcfService.BusinessObjects">6</CourseId> 
<MachineId xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Milpa.Server.WcfService.BusinessObjects">8qK6HM8LuAXq8bLROSsVjZ5u8Adn3IvvvLXDDe85Rq3Zi1hIQZZY8o6eyJPCYIgqdDRgRgqbK6RAdtJ3GXU73Q==</MachineId> 
<ProviderId xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Milpa.Server.WcfService.BusinessObjects">6</ProviderId> 
<StudentId xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Milpa.Server.WcfService.BusinessObjects">13</StudentId> 
<UserLiveInternalId xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Milpa.Server.WcfService.BusinessObjects">t=EwCgAa49BAAUdcc7Ta21slZda8sE9GInYkjRfuqAAFJh913naiYqRXhwp4INykAokezK77PZMZbccki2rUVcGM6iApglemodzHEo7Tg3aOAOfWbK2upbG3bPEvHi0DmlfDrMSUhTG7/z6QEIgkCMIlObhixIKLAxnBYQOf/kCNeV4nWWJRf4/hWiiEyogswdnkyRPmxepJXB5yS0R39xA2YAAAiYaPHDKmep4/AAkG1tI4kB7hTQjTlcGCSdQurmtw2yuGNZiQzP+QkoYW43rd0Z5EFAMJfHEwjQOIlvSC8qBiU6S7nGkl9gAhdKMwRi6t2PE/0ROkJrmLUZ5B8/v3pcYhNEA1/plZ7vx/+olxRzvqwH8LG3ygO7zpx7CxChtodm1uLDA1wQEpE3LyqxfyQgWauj3vYXdzPjyF7xsIHeytrWUisUhrB7jw7sMVQv+X14Fw8GXYrfxli5E/lWIx1UADS1ak53BdVk/aov1aBHLOMo0QhzvIfT8dxThBOEpQSjx76PElodDmN43r/A0jer5Jepsl3/RnXs98v4MAE=&amp;p=</UserLiveInternalId> 
<UserLiveLoginId xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Milpa.Server.WcfService.BusinessObjects">[email protected]</UserLiveLoginId> 
</objUserRequest> 
<listOfDumps><ContentDump><ContentId>1</ContentId><XmlContent>&lt;DoubtsStore xmlns="http://www.milpahost.com/DoubtsStore.xsd" /&gt;</XmlContent></ContentDump><ContentDump><ContentId>2</ContentId><XmlContent>&lt;AssessmentProficiency xmlns="http://www.milpahost.com/AssessmentProficiency.xsd"&gt; 

Как я могу хранить эту строку как константу?

+0

Как сохранить этот xml-файл в качестве файла актива? – Yury

+0

@Yury Да, это один из способов, но я не буду этого делать, так как чтение файла сделает приложение медленным – Jaguar

+0

Есть ли у вас какие-либо цифры об этом? Вы пытались прочитать из файла активов и измерить время? – Yury

ответ

0

Вы пробовали приложить строку в CDATA?

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="string_name"> 
<![CDATA[ 

    <?xml version="1.0" encoding="utf-8"?> 
    <soap:Envelope> 
     .... 
    </soap:Envelope> 

]]>   
    </string> 

</resources> 
Смежные вопросы