Skip to content

yihufree/DirTreeCopy

Repository files navigation

DirTreeCopy - 目录结构和文件名复制工具

一个简单但功能独特的Windows桌面应用程序,用于目录结构复制、文件整理、批量重命名、多格式导出等操作。

🚀 功能特性

核心功能

  • 单层目录复制 - 仅复制选定目录的第一层内容
  • 选定层级复制 - 复制用户在树形视图中选择的特定目录
  • 完整目录树复制 - 递归复制整个目录结构
  • 自定义复制 - 灵活选择要复制的文件和目录
  • 多格式导出功能 - 支持7种格式导出目录结构:TXT、HTML、HTML(含链接)、Markdown、Markdown(含链接)、DOCX、DOCX(含链接)

辅助功能

  • 可视化目录树 - 直观的树形视图展示目录结构
  • 文件大小显示 - 实时显示文件和目录大小(KB单位)
  • 批量重命名 - 支持本级、选定层级和全部层级的批量重命名
  • 智能错误处理 - 完善的权限和异常处理机制
  • 简洁用户界面 - 简洁直观的图形用户界面

📋 系统要求

  • 操作系统: Windows 7/8/10/11
  • Python版本: 3.6+ (如果从源码运行)
  • 基础依赖: tkinter (通常随Python安装)
  • 可选依赖: python-docx (用于DOCX格式导出,程序会自动检测并提示安装)

🛠️ 安装方式

方式一:直接下载可执行文件

  1. Releases 页面下载最新版本的 DirCopyTool_250625_V1.2.exe
  2. 双击运行即可使用,无需安装Python环境

方式二:从源码运行

  1. 克隆仓库到本地:

    git clone https://github.com/your-username/DirTreeCopy.git
    cd DirTreeCopy
  2. 运行程序:

    python main_app.py

方式三:自行构建可执行文件

  1. 安装PyInstaller:

    pip install pyinstaller
  2. 运行构建脚本:

    python build_script.py

📖 使用说明

基本操作流程

  1. 选择源目录 - 点击"浏览"按钮选择要操作的源目录
  2. 选择目标目录 - 点击"浏览"按钮选择复制目标位置
  3. 选择操作模式 - 根据需要选择相应的复制或导出模式
  4. 执行操作 - 点击"开始复制"按钮执行操作

功能详解

复制模式

  • 复制单层目录: 只复制源目录下的直接子项
  • 复制选中层: 复制在树形视图中选中的目录
  • 复制所有层级目录: 完整复制整个目录树结构
  • 自定义复制: 灵活选择要复制的内容

多格式导出模式

  • 导出目录文件名称: 生成目录结构文档,支持7种格式
    • TXT格式:纯文本树形结构,简洁清晰,适合快速查看
    • HTML格式:网页格式,支持折叠展开,美观易读
    • HTML格式(含链接):在HTML基础上添加可点击链接,直接打开文件
    • Markdown格式:适合文档编写和版本控制,支持GitHub等平台
    • Markdown(含链接):在Markdown基础上添加文件链接功能
    • DOCX格式:Microsoft Word文档格式,专业文档输出
    • DOCX格式(含链接):Word文档格式,支持真正的超链接,可直接点击打开文件

重命名功能

  • 重命名本级文件夹: 重命名当前目录下的文件夹
  • 重命名选中层: 重命名选中目录中的项目
  • 重命名全部: 递归重命名所有层级的文件和文件夹

🎯 使用场景

  • 项目文件整理 - 整理开发项目的目录结构
  • 文档归档 - 批量整理和复制文档文件
  • 备份操作 - 选择性备份重要目录
  • 目录结构分析 - 导出目录结构用于分析和文档
  • 批量重命名 - 统一文件和目录命名规范
  • 技术文档编写 - 使用Markdown格式导出,便于GitHub等平台展示
  • 项目报告制作 - 使用DOCX格式生成专业的项目结构报告
  • 快速文件访问 - 使用含链接的导出格式,一键打开目标文件
  • 团队协作 - 分享带链接的目录结构,提高团队工作效率

🔧 技术特性

  • 多格式支持: 7种导出格式,满足不同使用场景和需求
  • DOCX超链接技术: 使用底层XML API实现真正的可点击超链接
  • 文件URI转换: 支持本地文件路径转换为file://协议,完美兼容中文路径
  • 依赖管理: 自动检测python-docx库,缺失时提供友好的安装指导
  • 代码隔离: 新功能完全独立实现,不影响原有功能的稳定性
  • 异常处理: 完善的文件权限和访问异常处理
  • 内存优化: 高效的文件操作,适合处理大型目录
  • 用户体验: 直观的进度反馈和错误提示
  • 界面设计: 统一的字体样式和颜色方案,美观协调的用户界面
  • 代码质量: 完善的代码审查机制,健壮的错误处理
  • 安全可靠: 路径安全验证,输入验证机制,无安全漏洞
  • 跨平台兼容: 基于Python tkinter,理论上支持多平台

📝 更新日志

v1.2.0 (2025-06-25)

  • 多格式导出功能:从3种格式扩展到7种导出格式
  • 🔗 DOCX超链接功能:支持真正的可点击超链接,直接打开文件
  • 🌐 文件URI转换技术:完美支持中文路径和特殊字符
  • 🎨 UI界面优化:导出格式选项采用单行紧凑布局
  • 📦 依赖管理增强:自动检测python-docx库,提供友好安装指导
  • 🔧 代码隔离设计:新功能完全独立,确保原有功能稳定性
  • 📋 新增导出格式
    • HTML格式(含链接):可点击的网页链接
    • Markdown(含链接):支持文件链接的Markdown
    • DOCX格式:专业Word文档输出
    • DOCX格式(含链接):Word文档中的真实超链接

v1.1.0 (2025-01-18)

  • 🎨 界面优化:统一字体样式和颜色方案
  • 🎨 添加"重命名功能"标签,提升界面层次感
  • 🎨 优化框架标题显示,增强视觉效果
  • 🔧 修复构建脚本重复导入问题
  • 📝 完善项目文档和GitHub发布准备
  • ✅ 全面代码质量检查,确保生产就绪状态

v1.0.0 (2025-01-18)

  • ✨ 初始版本发布
  • ✅ 实现五大核心功能模块
  • ✅ 完善的用户界面和错误处理
  • ✅ 支持三种导出格式
  • ✅ 批量重命名功能

🤝 贡献指南

欢迎提交Issue和Pull Request来改进这个项目!

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

📄 开源协议

本项目采用 MIT License 开源协议。

🙏 致谢

  • 感谢Python社区提供的优秀工具和库
  • 感谢所有测试用户的反馈和建议

📞 联系方式

如有问题或建议,请通过以下方式联系:


⭐ 如果这个项目对您有帮助,请给个Star支持一下!

About

一个目录结构和文件名复制工具。

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages