找不到我的xml文件的路径

时间:2018-08-14 21:22:39

标签: c# ios xml path

我正在尝试找到一个名为ClassData.xml的XML文件,但找不到它。该文件本身隐藏在名为Data的文件夹中。我不知道如何到达文件所在的项目目录。我正在使用ios模拟器。

public override void ViewDidLoad ()     
{       
    base.ViewDidLoad ();

    this.lbl_Werkt.Text = "het werkt wtf";

    XmlDocument Doc = new XmlDocument();

    try
    {                
        Doc.Load("/Data/ClassData.xml");
    }
    catch (Exception error)
    {
        Console.WriteLine("The File could not be read:");
        Console.WriteLine(error.Message);
    }
    finally
    {
        foreach (XmlNode node in Doc.SelectNodes("//Warrior"))
        {
            string Name = node["Name"].InnerText;

            lbl_Name.Text = Name;
        }
    }
}

2 个答案:

答案 0 :(得分:0)

对于项目中的文件,请尝试以下操作:

public override void ViewDidLoad ()     
{       
   base.ViewDidLoad ();

   this.lbl_Werkt.Text = "het werkt wtf";

   try{

      XmlDocument Doc = new XmlDocument();
      string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"Data\ClassData.xml");

       if(!file.Exists(path))
          throw new IOExpection("File not found");

       Doc.Load(path);

       foreach (XmlNode node in Doc.SelectNodes("//Warrior"))
       {
          string Name = node["Name"].InnerText;

          lbl_Name.Text = Name;
       }
    }
    catch(IOException ioEx)
    {
       Console.WriteLine("The File could not be read:");
       Console.WriteLine(ioEx.Message);
    }
    catch(Exception ex)
    {
       Console.WriteLine(ex.Message);
    }
}  

答案 1 :(得分:0)

我真的很笨!如果其他人有此问题,请查看您的文件(在我的情况下为 xml ),并将生成操作从 Embedded 更改为 Content 。如果您这样做,则可以这样做:

Doc.Load(@"\Data\ClassData.xml");