【问题标题】:c# cant locate images [closed]c#找不到图像[关闭]
【发布时间】:2016-05-01 04:46:08
【问题描述】:

我有这段代码

string [] ImgLocation =
    Directory.GetFiles(@"Assets\Cards\Pack_Classic\", " *.png",
                       SearchOption.TopDirectoryOnly);

它应该给我文件夹中所有图像文件的位置。但是它根本不起作用,它只给我 0 个字符串。这是为什么 ? 图片位置是:_Poker\Poker\bin\Debug\Assets\Cards\Pack_Classic

【问题讨论】:

标签: c# image file directory


【解决方案1】:

GetFiles 需要一个绝对文件路径才能以可靠的方式工作。从 Reflection 中获取(通过 Assembly 类)

string exeDir = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
string fullPath = Path.Combine(exeDir, @"Assets\Cards\Pack_Classic");
string[] ImgLocation = Directory.GetFiles(fullPath, "*.png", SearchOption.TopDirectoryOnly);

exeDir 是您的bin\Debug 文件夹。


注意:GetFiles 也适用于从当前工作目录开始的相对路径。问题是你并不总是知道那个在哪里!它可以与可执行文件所在的目录不同。

【讨论】:

    猜你喜欢
    • 2019-12-10
    • 2021-07-05
    • 1970-01-01
    • 1970-01-01
    • 2010-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-18
    相关资源
    最近更新 更多