Skip to content

yeahhe365/Structure-Insight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Structure Insight

一个基于 PyQt5 的小工具,用于快速查看指定文件夹的目录结构,并可选择性地提取文本文件内容进行查看和保存。 PixPin_2024-12-21_11-52-26 PixPin_2024-12-21_11-52-41 PixPin_2024-12-21_11-52-52 PixPin_2024-12-21_11-53-02

功能简介

  • 目录结构可视化:将目标目录以树状结构展示,并在主窗口中显示详细的文件结构。
  • 文件内容提取(可选):
    • 默认情况下会提取文本文件的内容(支持 UTF-8、GBK、Latin1 编码自动尝试),并在主窗口中展示。
    • 可通过取消勾选「提取文件内容」选项,仅展示结构与文件名,而不读取文件内容。
  • 文件大小和类型过滤
    • 跳过常见的二进制文件类型(如图片、视频、音频、PDF、Office 文档等),仅处理文本类型文件。
    • 跳过大于 10MB 的文件,以防止卡顿或内存占用过高。
  • 可视化操作
    • 支持从主窗口直接导出文本信息到剪贴板或保存为文本文件。
    • 提供文件列表区(TreeView),点击特定文件名可快速跳转到对应的内容位置。
    • 可删除结果中的特定文件条目。
  • 主题切换:内置深色/浅色主题可自由切换。
  • 取消与重置:在处理过程中可随时取消操作,并可在完成后重置结果。

运行环境

  • Python 3.x
  • PyQt5(建议版本 5.15 及以上)
  • 已安装 mimetypes、logging 等标准库
  • 建议在 Windows 环境下运行(Linux/Mac 环境下也可尝试)

安装步骤

  1. 克隆本项目(或将源码下载到本地):

    git clone https://github.com/yourusername/structure_insight.git
  2. 安装依赖:

    pip install pyqt5

    如需其它依赖,请根据需要安装。

  3. 运行:

    python main.py

    main.py 不是文件名,请将上面的命令替换为您的入口文件名。

使用说明

  1. 启动程序后,界面左上方有一个文件夹图标按钮,点击可选择需分析的目录。
  2. 勾选「提取文件内容」可在分析完成后,于主窗口中查看文本文件的内容。取消该选项则只展示文件名与结构。
  3. 当处理开始后,状态栏会显示「处理中...」,进度条展示已处理文件数。可随时点击取消按钮中断操作。
  4. 处理完成后,可使用复制按钮将所有文本直接复制到剪贴板,或使用保存按钮将内容导出为文本文件。
  5. 若需修改显示主题,可点击主题切换按钮(桌面图标样式的按钮)进行深/浅色主题切换。
  6. 在右侧的文件列表树中点击文件条目,可在左侧文本框中快速定位到对应文件内容的位置。

常见问题

  • 若遇到「无法读取」或「权限错误」的情况,程序会在日志文件 file_reader.log 中进行记录,方便后续排查。
  • 非文本文件、超过 10MB 的文件或被指定为跳过的文件类型将不会被提取内容,这些文件会在结果中标记为「跳过」。
  • 若文件过多,处理过程可能需要一定时间。您可使用「取消」按钮中断。

日志记录

  • 程序在同目录下生成 file_reader.log 日志文件,以记录异常和错误信息,方便后续分析。

License

本项目采用 MIT 开源许可证。详情请参阅 LICENSE 文件。

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages