C#winform中读取文件夹的时候,碰到不能读取的文件该用什么方法过滤掉?

 我来答
lzh3452
2012-03-30 · TA获得超过1044个赞
知道小有建树答主
回答量:1168
采纳率:100%
帮助的人:855万
展开全部
不知道你的不能读取是什么概念,正在被占用还是格式不正确还是文件类型不符?被占用的以只读方式读取应该不会有问题,格式不正确的只能用try。。。catch 来解决,文件类型不符,直接由文件信息中的扩展名就可以过滤掉。
追问
比如说,我想读取“abc.”这个文件夹的子目录。但是这个文件夹根本就不能打开,因为这个名字不合法,不能复制、移动、删除,不知道,除了加异常处理,还有什么办法

再问一下不知道我这句代码能不能读到隐藏文件,我原意是不读隐藏文件,但是这样用后还是读到了隐藏文件“!d.Attributes.HasFlag(FileAttributes.Hidden)”
追答
你说的这种情况属于未知异常,或者说你不能正常处理的异常,只有去读了,才会知道是不是有问题,而且一旦有问题了,就会产生异常,这种用异常处理是对的。

第二个问题可以参照这个网址:http://msdn.microsoft.com/zh-cn/library/system.io.file.getattributes(v=vs.80).aspx
我看有写到文件的Hidden属性,你看看人家的完整代码,和你的是不是有什么不同。
fengyu8881
2012-03-30 · TA获得超过139个赞
知道答主
回答量:239
采纳率:0%
帮助的人:130万
展开全部
filter 过滤到一些扩展名不符合的
但如果符合扩展名的文件格式仍然不对,只好
try /catch
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhailk
2012-03-29 · 超过55用户采纳过TA的回答
知道小有建树答主
回答量:232
采纳率:0%
帮助的人:115万
展开全部
抛出异常
追问
- -能否来点给力的回答
追答
用try catch
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式