鱼C论坛

 找回密码
 立即注册
查看: 4088|回复: 6

[已解决]求助,用os.listdir()会读出隐藏的desktop.ini系统文件

[复制链接]
发表于 2020-7-7 16:51:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
今天遇到个比较麻烦的问题,用os.listdir()会读出隐藏的desktop.ini系统文件,导致后续代码报错,虽然做些修改或许可以避免,但是仍然很想弄清楚为什么会有这样的情况出现。代码如下,求大佬解答疑惑!!!

import cv2
import numpy as ny
import os

address = input(r"输入目标路径:")
os.chdir(address)
imgs = os.listdir(".")
print(imgs)



运行结果却是这样:


输入目标路径:D:\hhhh
['bc1@1_side (12).jpeg', 'BC2@6_side (3).jpeg', 'BC2_0@1_side.jpeg', 'BC@8_side (10).jpeg', 'BC@8_side.jpeg', 'BC_0@2_[defect]_side.jpeg', 'desktop.ini']

我的文件夹里放的全是图像,他读到了隐藏起来的desktop.ini系统文件,而且据测试有些文件夹不会读到,有些却会。
之前没遇到过,这是什么情况?
最佳答案
2020-7-7 19:22:05
1. 根据文件名设置过滤白名单
2. 读取文件的 stat 信息,判断是否为隐藏文件
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-7 16:58:27 | 显示全部楼层


你重新新建个文件夹吧,然后把图片存到那个文件夹去吧?

去查了下 :desktop.ini文件主要是用来保存系统文件夹的个性化设置信息,不建议删除

所以有些系统文件夹内会有,有些不会,就是因为系统的某些个性化保存的目录不在这个文件夹吧?


想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-7 17:00:52 | 显示全部楼层
desktop.ini 只是存储了你对这个位置的个性化设置,有些没有设置的就不会有。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-7-7 17:02:20 | 显示全部楼层
用os.path.splitext判断下文件后缀好了,把不想要的跳过~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-7-7 17:24:31 | 显示全部楼层
本帖最后由 曼查克 于 2020-7-7 17:35 编辑

先澄清一下,有desktop.ini文件的会读到,没有的就读不到。

然后做了很多尝试:
新建文件夹,把报错的那包图一张张复制到新文件夹测,大部分没有问题,个别图像复制过来就会又读到这个文件,猜测desktop.ini文件跟这两张图像相关。
换了电脑也这样。
感觉是不是都是这样的,只是自己一直不知道呢。。

搜了一下好像确实如此。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-7 17:32:31 | 显示全部楼层
曼查克 发表于 2020-7-7 17:24
先澄清一下,有desktop.ini文件的会读到,没有的就读不到。

然后做了很多尝试:


desktop.ini 去查了下还有可能是病毒伪装的哈哈....
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-7 19:22:05 | 显示全部楼层    本楼为最佳答案   
1. 根据文件名设置过滤白名单
2. 读取文件的 stat 信息,判断是否为隐藏文件
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-20 03:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表