在我的电脑上读XML,但在我的Android手机上读不到

本文关键字:我的 手机 Android XML 电脑 | 更新日期: 2023-09-27 18:23:49

以下代码在我的电脑中非常适用,但当我尝试在Android手机中运行它时,它不起作用。

string path = @"Assets'Layout'XML'file" + select.ToString() + @".xml";
XmlSerializer xmlSerializer = new XmlSerializer(typeof(List<Name>));
StreamReader sr = new StreamReader(path);
List<Name> listnames = (List<Name>)xmlSerializer.Deserialize(sr);

如何使代码在我的Android手机中工作?

在我的电脑上读XML,但在我的Android手机上读不到

我几乎放弃了,但最终解决了它。Unity将所有内容转换为二进制变量,因此您需要做的第一件事是将所有xml文件转换为txt,并将它们复制到"Assets/Resources"文件夹中。

然后,您可以使用以下代码:

    TextAsset asset = Resources.Load("file" + select.ToString()) as TextAsset;
    Stream s = new MemoryStream(asset.bytes);
    BinaryReader br = new BinaryReader(s);
    XmlSerializer xmlSerializer = new XmlSerializer(typeof(List<Name>));
    StreamReader sr = new StreamReader(s);
    List<Name> listnames = (List<Name>)xmlSerializer.Deserialize(sr);