即使文件位于同一文件夹中也获取 FileNotFoundException

Getting FileNotFoundException even when file is in same folder

我收到上述错误,即使我正在读取的文件与可执行文件位于完全相同的位置。

这已经工作了 2 天,现在由于一些奇怪的原因,它没有。

下面的代码只是为了测试目的附加到菜单的条带:

private void xMLGUIToolStripMenuItem_Click(object sender, EventArgs e)
{
    XMLGuiFactory factory = new XMLGuiFactory();
    GroupBox view = factory.CreateNewView("FosterChildView.xml", "xxxxxxxxxx");
    Form viewForm = new Form();
    viewForm.MdiParent = this;
    viewForm.AutoScroll = true;
    viewForm.Controls.Add(view);
    viewForm.Show();
}

但是当我们进入下面的代码时:

public GroupBox CreateNewView(String path, String token)
{
    XmlDocument xmlDoc = new XmlDocument();
    xmlDoc.Load(path);

    DataBag info = Facade.GetFosterChild(EIdentifierType.CPR, token);
...
...

它在 xmlDoc.Load(path) 处停止并出现 FileNotFoundException:

如你所见,它说找不到文件,但再看看这个:

这有什么意义?它在那里,但 C# 认为没有。

您在文件夹中的文件名后有一个 space。删除它,一切都应该工作。

在这种情况下,在记事本中将两条路径依次复制并盯着看会很有用。如果没有帮助,您可以使用 Ctr+C、Ctr+F 搜索路径的子字符串(这将显示编码问题,例如拉丁文和西里尔文 'a')。 是的,删除空格 :)