我正在尝试找到一个名为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;
}
}
}
答案 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");