3

我有这个问题:

我需要gif从名为beelden的文件夹中取出一些内容。

这是我使用的代码:

this.afbeelding = Image.FromFile("beelden/" + imgPath);

我总是收到这个错误:

FileNotFoundException 未处理 beelden/Verdediger.gif

这是我的地图结构:

  • beelden(包含我的图像(gifs))
  • SpaceInvaders(包含所有项目数据和类)
  • Spaceinvaders(这是解决方案)

编辑无论我尝试什么,我仍然会遇到同样的错误。这是一个学校项目,今晚必须完成。现在已经为此苦苦挣扎了 2 天:s。 在此处输入图像描述

这是我更改反斜杠时遇到的另一个错误。它一直说';' ')'预期的。不管我添加多少次 错误

4

2 回答 2

2

用于Path.Combine连接多个段。

Image.FromFile(Path.Combine("beelden", imgPath);

在您当前的代码中,正斜杠可能会导致问题。您还可以尝试将路径保存在单独的字符串变量中并查看您获得的值。在 Windows 资源管理器中尝试该路径以查看该文件是否存在。

编辑:(根据屏幕截图),您应该替换文件夹名称中的转发,因此您的声明应该是:

var path = System.IO.Path.Combine(Application.ExecutablePath, "beelden" + imgPath)
                                                            //^^^^^^^^^
                                                            //Remove forward slash
于 2013-05-24T07:12:04.153 回答
1

尝试使用绝对路径,而不是相对路径。您的文件夹“beelden”显然映射到另一个路径。就像是

this.afbeelding = Image.FromFile(@"c:\temp\beelden\" + imgPath);

System.IO.Path.Combine搭配使用Application.ExecutablePath

var path = System.IO.Path.Combine(Application.ExecutablePath, @"beelden\" + imgPath)
this.afbeelding = Image.FromFile(path);
于 2013-05-24T07:14:19.760 回答