File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1- # Structure-Insight
1+
2+ # Structure Insight
3+
4+ 一个基于 PyQt5 的小工具,用于快速查看指定文件夹的目录结构,并可选择性地提取文本文件内容进行查看和保存。
5+
6+ ## 功能简介
7+
8+ - ** 目录结构可视化** :将目标目录以树状结构展示,并在主窗口中显示详细的文件结构。
9+ - ** 文件内容提取** (可选):
10+ - 默认情况下会提取文本文件的内容(支持 UTF-8、GBK、Latin1 编码自动尝试),并在主窗口中展示。
11+ - 可通过取消勾选「提取文件内容」选项,仅展示结构与文件名,而不读取文件内容。
12+ - ** 文件大小和类型过滤** :
13+ - 跳过常见的二进制文件类型(如图片、视频、音频、PDF、Office 文档等),仅处理文本类型文件。
14+ - 跳过大于 10MB 的文件,以防止卡顿或内存占用过高。
15+ - ** 可视化操作** :
16+ - 支持从主窗口直接导出文本信息到剪贴板或保存为文本文件。
17+ - 提供文件列表区(TreeView),点击特定文件名可快速跳转到对应的内容位置。
18+ - 可删除结果中的特定文件条目。
19+ - ** 主题切换** :内置深色/浅色主题可自由切换。
20+ - ** 取消与重置** :在处理过程中可随时取消操作,并可在完成后重置结果。
21+
22+ ## 运行环境
23+
24+ - Python 3.x
25+ - PyQt5(建议版本 5.15 及以上)
26+ - 已安装 mimetypes、logging 等标准库
27+ - 建议在 Windows 环境下运行(Linux/Mac 环境下也可尝试)
28+
29+ ## 安装步骤
30+
31+ 1 . 克隆本项目(或将源码下载到本地):
32+ ``` bash
33+ git clone https://github.com/yourusername/structure_insight.git
34+ ```
35+
36+ 2 . 安装依赖:
37+ ``` bash
38+ pip install pyqt5
39+ ```
40+
41+ 如需其它依赖,请根据需要安装。
42+
43+ 3 . 运行:
44+ ``` bash
45+ python main.py
46+ ```
47+
48+ 若 ` main.py ` 不是文件名,请将上面的命令替换为您的入口文件名。
49+
50+ ## 使用说明
51+
52+ 1 . 启动程序后,界面左上方有一个文件夹图标按钮,点击可选择需分析的目录。
53+ 2 . 勾选「提取文件内容」可在分析完成后,于主窗口中查看文本文件的内容。取消该选项则只展示文件名与结构。
54+ 3 . 当处理开始后,状态栏会显示「处理中...」,进度条展示已处理文件数。可随时点击取消按钮中断操作。
55+ 4 . 处理完成后,可使用复制按钮将所有文本直接复制到剪贴板,或使用保存按钮将内容导出为文本文件。
56+ 5 . 若需修改显示主题,可点击主题切换按钮(桌面图标样式的按钮)进行深/浅色主题切换。
57+ 6 . 在右侧的文件列表树中点击文件条目,可在左侧文本框中快速定位到对应文件内容的位置。
58+
59+ ## 常见问题
60+
61+ - 若遇到「无法读取」或「权限错误」的情况,程序会在日志文件 ` file_reader.log ` 中进行记录,方便后续排查。
62+ - 非文本文件、超过 10MB 的文件或被指定为跳过的文件类型将不会被提取内容,这些文件会在结果中标记为「跳过」。
63+ - 若文件过多,处理过程可能需要一定时间。您可使用「取消」按钮中断。
64+
65+ ## 日志记录
66+
67+ - 程序在同目录下生成 ` file_reader.log ` 日志文件,以记录异常和错误信息,方便后续分析。
68+
69+ ## License
70+
71+ 本项目采用 MIT 开源许可证。详情请参阅 [ LICENSE] ( LICENSE ) 文件。
You can’t perform that action at this time.
0 commit comments