pictureBox1.Image = Image.FromFile("F:\\fc三胞胎.jpg",true)为什么老是提示错误,路径没错呀!问题到底出在哪儿

时间:2022-02-08 19:50:33
pictureBox1.Image = Image.FromFile("F:\\fc三胞胎.jpg",true)为什么老是提示错误,路径没错呀!问题到底出在哪儿

27 个解决方案

#1


测试一点问题没有,你确认文件存在,盘符写对了

#2


System.Drawing.Image.FromFile("F:\\fc三胞胎.jpg")

提示什么错误

#3


可能问题不是出在这里,楼主仔细检查下吧

#4


ystem.Drawing.Image.FromFile(@"F:\fc三胞胎.jpg")

#5


你的文件被使用着。

#6


将文件名改成英文的试试

#7


引用楼主 mr_yellowpeng 的回复:
▪ 如何选择IaaS提供商?▪ 怎样选择基于SaaS的IT服务管理...▪ 酒店行业的CIO们是如何看待云计...▪ 详解混合云架构之使用与挑战?▪ 云计算能否简化企业项目管理?pictureBox1.Image = Image.FromFile("F:\\fc三胞胎.jpg",true)为什么老是提示错误,路径没错呀!问题到底出在哪儿

没有错吧LZ  你清理解决方案重新生成一次试试 如果再不行 把其他代码也贴出来看看

#8


路径前面加@  

pictureBox1.Image = Image.FromFile(@"F:\\fc三胞胎.jpg",true)

#9


路径里面符号不会是全角或者中文符号吧?

#10


各位大侠,显示的问题我搞定了,现在让我头痛的是,picturebox只能显示那一张固定的图片,如果该图片的名字一更改,就报错,更奇怪的是,把其它图片改成该图片的名字,运行还是一样报错!路径都正确,文件也存在,也没被使用,我快疯了...求指教呀!

#11


重点还是调试。动态的显示图片也应该没问题啊。

#12


 private void button7_Click(object sender, EventArgs e)
        {
            pictureBox2.Image = null;
            pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
            pictureBox2.Image = Image.FromFile(@"F:\\管理\\管理\\bin\\Debug\\房产资料\\picture\\ fcdnf.jpg", true);
        }

 private void button8_Click(object sender, EventArgs e)
        {
            pictureBox2.Image = null;
            pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
            pictureBox2.Image = Image.FromFile(@"F:\\管理\\管理\\bin\\Debug\\房产资料\\picture\\ fcdnfqq.jpg", true);
        }

两个按钮代码一样,就是显示的图片不一样!button7就可以正常显示,button8就报错!路径没错,文件也有,也没被使用!求指教,求指教...

#13


pictureBox1.Image=Nothing;后再加载其他图也不行么?

#14


调试了N+1次了,我得出结论:貌似只能显示“fcdnf.jpg”这一张图片,而且它的名字还不能更改,我勒个去...也重新生成过项目,picturebox我也删除过.我有点怀疑是不是这电脑系统的问题了...

#15


pictureBox2.Image = null;
这句已经初始化picturebox了呀!还是报错...报错说:“F:\\管理\\管理\\bin\\Debug\\房产资料\\picture\\ fcdnfqq.jpg”
可是,路径没错呀,文件它也依然存在呀!原因未知...

#16


我刚刚试了一下,你的代码没有问题

#17


我打心眼里觉得我这代码也没问题,so easy!可是,在我这电脑上 它就是一个劲报错!算了,果断恢复系统...

#18


pictureBox1.Image = System.Drawing.Image.FromFile("F:\\fc三胞胎.jpg");


楼上那么多方式,你不行就换个方式啊 

#19


新建一个项目试试。曾经写ASP.NET程序的时候遇到过一个类似的情况.

#20


我了个去,你是不是把图片编译到程序里面去了啊?

#21


引用 8 楼 iraya 的回复:
路径前面加@  
C# code

pictureBox1.Image = Image.FromFile(@"F:\\fc三胞胎.jpg",true)


就是因为不加 @,所以要双 \, 否则就用 @

#22


这句代码一点问题都没有,很简单,你把路径复制出来,在 windows explorer 里面输入回车,然后会不会打开,判断这个图片是不是存在就ok了

#23


新建项目我也试过,@要不要我也试过,路径放到windows explorer,图片也能找到,系统中午吃饭的时候我也还原了一下,但悲催的是,还是不行!就这一个问题了,都快恶心死了!

#24


我觉得可能是文件被锁定的原因
尝试一下如下思路,
不要用Image.FromFile()方法
用Image.FromStream()
先把文件读取成文件流,再用上述方法,
换图片的时候把PictureBox的原图片先Dispose()释放资源
再重新读取新的文件转成流,调用FromStream()方法

#25


  
//我按这个测试了,一点问题也没有(VS2008)
private void button1_Click(object sender, EventArgs e)
        {
             pictureBox1.Image = null;
  pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
  pictureBox1.Image = Image.FromFile(@"g:\图形图片\图片\Photos\IMG0018A.jpg",true);
        }

        private void button2_Click(object sender, EventArgs e)
        {
 pictureBox1.Image = null;
  pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
  pictureBox1.Image = Image.FromFile(@"g:\图形图片\图片\Photos\IMG0018C.jpg",true);
        }

#26


我也感觉文件是被锁定了一样!可是不应该呀,我在公司电脑上新建项目,还是只能读取那一张图片,可是我在自己电脑上新建项目,也还是只能读取那一张图片,如果说真的是文件被锁定了的话,这样的情况会出想么?如果用Image.FromStream()方法做的话,怎么写呀?请指点迷津啊!灰常感谢...

#27


感谢各位了,我这问题已经解决了!事实证明我们大家都是对的,是我这电脑装软件的问题,刚才把软件卸载,重新维护了一下,再运行就没问题了!谢谢大家了,希望大家日后继续关注,继续指教,大家相互学习就会又提高!

#1


测试一点问题没有,你确认文件存在,盘符写对了

#2


System.Drawing.Image.FromFile("F:\\fc三胞胎.jpg")

提示什么错误

#3


可能问题不是出在这里,楼主仔细检查下吧

#4


ystem.Drawing.Image.FromFile(@"F:\fc三胞胎.jpg")

#5


你的文件被使用着。

#6


将文件名改成英文的试试

#7


引用楼主 mr_yellowpeng 的回复:
▪ 如何选择IaaS提供商?▪ 怎样选择基于SaaS的IT服务管理...▪ 酒店行业的CIO们是如何看待云计...▪ 详解混合云架构之使用与挑战?▪ 云计算能否简化企业项目管理?pictureBox1.Image = Image.FromFile("F:\\fc三胞胎.jpg",true)为什么老是提示错误,路径没错呀!问题到底出在哪儿

没有错吧LZ  你清理解决方案重新生成一次试试 如果再不行 把其他代码也贴出来看看

#8


路径前面加@  

pictureBox1.Image = Image.FromFile(@"F:\\fc三胞胎.jpg",true)

#9


路径里面符号不会是全角或者中文符号吧?

#10


各位大侠,显示的问题我搞定了,现在让我头痛的是,picturebox只能显示那一张固定的图片,如果该图片的名字一更改,就报错,更奇怪的是,把其它图片改成该图片的名字,运行还是一样报错!路径都正确,文件也存在,也没被使用,我快疯了...求指教呀!

#11


重点还是调试。动态的显示图片也应该没问题啊。

#12


 private void button7_Click(object sender, EventArgs e)
        {
            pictureBox2.Image = null;
            pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
            pictureBox2.Image = Image.FromFile(@"F:\\管理\\管理\\bin\\Debug\\房产资料\\picture\\ fcdnf.jpg", true);
        }

 private void button8_Click(object sender, EventArgs e)
        {
            pictureBox2.Image = null;
            pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
            pictureBox2.Image = Image.FromFile(@"F:\\管理\\管理\\bin\\Debug\\房产资料\\picture\\ fcdnfqq.jpg", true);
        }

两个按钮代码一样,就是显示的图片不一样!button7就可以正常显示,button8就报错!路径没错,文件也有,也没被使用!求指教,求指教...

#13


pictureBox1.Image=Nothing;后再加载其他图也不行么?

#14


调试了N+1次了,我得出结论:貌似只能显示“fcdnf.jpg”这一张图片,而且它的名字还不能更改,我勒个去...也重新生成过项目,picturebox我也删除过.我有点怀疑是不是这电脑系统的问题了...

#15


pictureBox2.Image = null;
这句已经初始化picturebox了呀!还是报错...报错说:“F:\\管理\\管理\\bin\\Debug\\房产资料\\picture\\ fcdnfqq.jpg”
可是,路径没错呀,文件它也依然存在呀!原因未知...

#16


我刚刚试了一下,你的代码没有问题

#17


我打心眼里觉得我这代码也没问题,so easy!可是,在我这电脑上 它就是一个劲报错!算了,果断恢复系统...

#18


pictureBox1.Image = System.Drawing.Image.FromFile("F:\\fc三胞胎.jpg");


楼上那么多方式,你不行就换个方式啊 

#19


新建一个项目试试。曾经写ASP.NET程序的时候遇到过一个类似的情况.

#20


我了个去,你是不是把图片编译到程序里面去了啊?

#21


引用 8 楼 iraya 的回复:
路径前面加@  
C# code

pictureBox1.Image = Image.FromFile(@"F:\\fc三胞胎.jpg",true)


就是因为不加 @,所以要双 \, 否则就用 @

#22


这句代码一点问题都没有,很简单,你把路径复制出来,在 windows explorer 里面输入回车,然后会不会打开,判断这个图片是不是存在就ok了

#23


新建项目我也试过,@要不要我也试过,路径放到windows explorer,图片也能找到,系统中午吃饭的时候我也还原了一下,但悲催的是,还是不行!就这一个问题了,都快恶心死了!

#24


我觉得可能是文件被锁定的原因
尝试一下如下思路,
不要用Image.FromFile()方法
用Image.FromStream()
先把文件读取成文件流,再用上述方法,
换图片的时候把PictureBox的原图片先Dispose()释放资源
再重新读取新的文件转成流,调用FromStream()方法

#25


  
//我按这个测试了,一点问题也没有(VS2008)
private void button1_Click(object sender, EventArgs e)
        {
             pictureBox1.Image = null;
  pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
  pictureBox1.Image = Image.FromFile(@"g:\图形图片\图片\Photos\IMG0018A.jpg",true);
        }

        private void button2_Click(object sender, EventArgs e)
        {
 pictureBox1.Image = null;
  pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
  pictureBox1.Image = Image.FromFile(@"g:\图形图片\图片\Photos\IMG0018C.jpg",true);
        }

#26


我也感觉文件是被锁定了一样!可是不应该呀,我在公司电脑上新建项目,还是只能读取那一张图片,可是我在自己电脑上新建项目,也还是只能读取那一张图片,如果说真的是文件被锁定了的话,这样的情况会出想么?如果用Image.FromStream()方法做的话,怎么写呀?请指点迷津啊!灰常感谢...

#27


感谢各位了,我这问题已经解决了!事实证明我们大家都是对的,是我这电脑装软件的问题,刚才把软件卸载,重新维护了一下,再运行就没问题了!谢谢大家了,希望大家日后继续关注,继续指教,大家相互学习就会又提高!