如何检查图像是否在WPF的文件夹中?

时间:2018-08-09 13:31:49

标签: c#

在我的应用程序中,我有一个文本框,我可以在其中通过运行时的命令生成图像,但是现在我想检查图像是否存在。如果没有图像,那么我想生成标签。这是我的代码。我试图通过正则表达式实现它。

else if (Regex.IsMatch(label, "^<IMG.*>"))
{
    var imageLabel = Regex.Replace(label, "<IMG|>", "");

    if (System.Drawing.Image.FromFile($"{imageLabel}.bmp") != null)
    {
        var image = System.Drawing.Image.FromFile($"{imageLabel}.bmp");
        graphics.DrawImage(image, x, y, image.Width, image.Height);

        x = image.Width + 5f;

        if (image.Height > rowHeight)
        {
            rowHeight = image.Height;
        }
    }
    else
    {
        var font = GetRowFont(isBold, isUnderLine, isHigh, selectedCharwidth);

        graphics.DrawString("<?>", font, Brushes.Black, new PointF(x, y));

        x += label.Length * font.Size;
    }
}

例如,我在文件夹中有一个名为ABC.bmp的图像,所以如果我键入它会生成图像,如果没有名为ABC的图像则会生成一个标签''。如果我输入了错误的名称,它将显示一个异常。对不起,错误的解释。

1 个答案:

答案 0 :(得分:0)

您可以使用File.Exists方法修改代码以检查文件是否存在:

 if (File.Exists($"{imageLabel}.bmp"))
 {
    var image = System.Drawing.Image.FromFile($"{imageLabel}.bmp");
    ....