Image.FromFile报错System.NotSupportedException:“不支持给定路径的格式。”的解决办法

先看一段代码:

 string fileName_Apple1 = @"C:\Users\Administrator\Desktop\1.png";
 string fileName_Apple2 = @"‪‪‪C:\Users\Administrator\Desktop\1.png";
          

         
            Image img1 = Image.FromFile(fileName_Apple1);
            Image img2 = Image.FromFile(fileName_Apple2);

从表面看,fileName_Apple1 和fileName_Apple2 的值是相等的,然后奇怪的事情发生了,= Image.FromFile(fileName_Apple2);会报错,如下:Image.FromFile报错System.NotSupportedException:“不支持给定路径的格式。”的解决办法_第1张图片
刚开始我也纳闷,然后调用了字符串对比,惊奇的发现fileName_Apple1和fileName_Apple2是不同的。
Image.FromFile报错System.NotSupportedException:“不支持给定路径的格式。”的解决办法_第2张图片
然后又改成了下述代码:将字符串的每个字符打印出来

string fileName_Apple1 = @"C:\Users\Administrator\Desktop\1.png";
    string fileName_Apple2 = @"‪‪‪C:\Users\Administrator\Desktop\1.png";

    if (fileName_Apple1 == fileName_Apple2)
    {
        Console.WriteLine("相同");
    }
    else
    {
        Console.WriteLine("不同");
    }


    char[] char1 = fileName_Apple1.ToCharArray();
    char1.ToList().ForEach(item=>Console.WriteLine (item));
    Console.WriteLine("--------------------------");
    char[] char2 = fileName_Apple2.ToCharArray();
    char2.ToList().ForEach(item => Console.WriteLine(item));

    Image img1 = Image.FromFile(fileName_Apple1);
    Image img2 = Image.FromFile(fileName_Apple2);

输出:

C
:
\
U
s
e
r
s
\
A
d
m
i
n
i
s
t
r
a
t
o
r
\
D
e
s
k
t
o
p
\
1
.
p
n
g
--------------------------
?
?
?
C
:
\
U
s
e
r
s
\
A
d
m
i
n
i
s
t
r
a
t
o
r
\
D
e
s
k
t
o
p
\
1
.
p
n
g

这就发现问题了,fileName_Apple2在C这个字符前居然还有三个字符,说明这个字符串有问题,然后将鼠标光标移动到这里,删掉了那三个字符问题就解决了,神奇的是,我们看不出来那里有字符,但是实际上他有多余的字符。

你可能感兴趣的:(c#,c#)