Skip to content

Commit 213f750

Browse files
committed
rq
rq
1 parent 4c1e291 commit 213f750

File tree

3 files changed

+76
-0
lines changed

3 files changed

+76
-0
lines changed

Structure-Insight/README.md

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

0 commit comments

Comments
 (0)