系统简介

最近有个需求,需要罗列出各个目录中文件的信息,检索各类文件的最新版本。网上看了很多方式,但发现没有合适的。于是利用空余时间开始编写了一套文件遍历系统,如此便有了Laver(紫菜)。Laver遵从简单好用的原则,用户友好的UI界面。且所有代码基于Java,每一个自定义的类与方法都有详尽的纯中文注释信息,方便二次开发。

Laver,最初起自Lastest Version,发现两者结合后正好是我喜欢的蔬菜之一。缘,妙不可言。

功能演示

功能说明

  • 遍历目录:可以对选中的根目录进行深度遍历,检索出所有的文件及其父目录与完整路径信息。
  • 格式限定:支持对需要检索的文件格式进行限定,内置常用的文档格式(WPS,PDF等),且支持用户自定义格式。
  • 检索深度:支持对深度进行限定,当检索深度为1时,可检索根目录下一层目录的所有文件
  • 检索模式*:(当前正在开发中)支持对检索方式进行定义,系统自带匹配文件名中带有ver,_v,Ver等版本标识符的字符串,对其后面的版本号进行分析,只列出最新版本的文件。或者用户自定义的其他类型字符串。
  • 检索结果可排序:对检索的结果可以根据字典顺序迅速找到你需要查找的文件,适用于文件找不到的情况。
  • 检索结果可导出:检索到的信息可以生成Excel,方便文档归档与后续分类

快速开始

你可以通过git下载可执行的exe文件。下载链接为http://www.github.com/heicaijun/Laver/release,让我们通过简单的学习开始使用吧!

基础功能使用

  1. 首先设定需要扫描的根目录,选择你需要扫描的文件夹。

  1. 选定你需要扫描的文件类型,勾选all选项以列出所有类型文件。也可以用系统筛选出wps,pdf等常用的文件类型,你甚至可以选择other选项自定义要扫描的格式

  1. 设定需要扫描的深度,0代表无限层(由于其底层算法为递归,所以请避免检索文件过多的根目录,或通过扫描格式与扫描深度来限制,以免程式卡死),输入120可以扫描根目录下的120级子目录

  1. 点击开始扫描即可运作,扫描到的结果将会列入到下方的表格中。

  1. 点击导出结果至Excel按钮可以将扫描到的内容保存到Excel中,方便后续使用Excel工具来处理扫描数据。

高级功能使用

如您对如下表述存在疑问,则不建议使用这些功能。您可以通过留言提出疑问

  1. 扫描的格式可以是用户自定义的格式,方便用户列出自己需要检索但系统未自带的特殊格式文件,用户可以在其他格式框内输入用逗号隔开的多个文件后缀名,比如用户可以在框内输入"cad,psd,png,gif"来检索出所有需要的图片。

  1. 扫描的模式可以选择三种不同的模式
扫描模式 描述
全扫描 即无论是什么版本的文件都会将之全部扫描出来
最新版本模式 系统自带的规则,可以根据文件名中的[version,ver,v]这三种版本标识符来整理出版本号,并过滤掉旧版本
自定义规则 你可以在输入框中输入用英文逗号隔开的版本标识,诸如[ 版本,文档,spec ]。

需要注意的是,版本标识符特指文件名中可以明显区分版本号的字符,比如文件Sample File Ver_1.0.1.xlsx标本标识符即为ver,不难发现自ver到文件末尾均为数字与连接字符。所以版本标识符到文件末尾不允许出现除数字与通用的连接符(诸如:_ ( ) [ ] - ( ) 等)外的其他任何字符。否则系统将无法判断文件是否为同一文件的不同版本。

开发指南

如果你想要学习、开发、修改或自行构建Laver,可以依照下面的指示:

  1. 掌握基础的java知识(尤其是java.util.IO类)
  2. 掌握Swing开发,熟悉WindowBuilder插件的使用
  3. 熟悉git版本管理工具的使用,至少会pull操作。

环境搭建

基础开发环境

jdk版本至少为1.7,开发工具建议Eclipse,网上教程很多,这里不赘述。如选择IDEA请对应安装JFormDesigner插件(收费插件)

WindowBuilder插件安装

考虑到国内用户下载国外源的时候会报错,所以建议使用国内源下载

  1. 进入 WindowBuilder 的官网 : https://www.eclipse.org/windowbuilder/download.php。
  2. 选择 1.9.3 的 link , 右键点击,复制连接地址:http://download.eclipse.org/windowbuilder/1.9.3/ , 这个是官方提供的下载源。

  1. 将官方下载源修改为国内的:
http://download.eclipse.org/windowbuilder/1.9.3/
http://mirror.bit.edu.cn/eclipse/windowbuilder/1.9.3/
  1. 依次点开Help ->Install New Software

  1. 点击Add...按钮 ,将国内源:http://mirror.bit.edu.cn/eclipse/windowbuilder/1.9.3/ 复制到Location框中,Name可以随便起,这里起WindowBuilder,然后点击Add

  1. 点击 Select All , 点击 *next* 开始下载。路上一路狂点Next即可

  1. 最后点击I Accept 表示接受,并点击Finish即可等待安装完成。

Laver 文件版本遍历器的更多相关文章

  1. HTML5文件上传器,纯脚本无插件的客户端文件上传器---Uploader 文件上传器类

    概述 客户端完全基于JavaScript的 浏览器文件上传器,不需要任何浏览器插件,但需要和jQuery框架协同工作,支持超大文件上传,其算法是将一个超大文件切片成N个数据块依次提交给服务 端处理,由 ...

  2. 疑问:Iterator 遍历器和数据集合各种遍历方法的区别

    https://es6.ruanyifeng.com/#docs/iterator Iterator(遍历器)的概念 Iterator 接口主要供for...of消费 Iterator 的遍历过程是: ...

  3. Java有根儿:Class文件以及类加载器

    JVM 是Java的基石,Java从业者需要了解.然而相比JavaSE来讲,不了解JVM的一般来说也不会影响到工作,但是对于有调优需求或者系统架构师的岗位来说,JVM非常重要.JVM不是一个新的知识, ...

  4. 自制C#版3DS文件的解析器并用SharpGL显示3DS模型

    自制C#版3DS文件的解析器并用SharpGL显示3DS模型 我已经重写了3ds解析器,详情在此(http://www.cnblogs.com/bitzhuwei/p/CSharpGL-2-parse ...

  5. lua使用io.open跨平台文件夹遍历匹配查找

    -- Desc :实现在LUA_PATH中的lua文件中遍历寻找没用到PNG_PATH路径下的png图片,并将其打印出来. -- Date :12:49:28 2014-09-04 1 print(& ...

  6. Iterator遍历器 调用Symbol.Iterator属性,遍历器对象。

    Iterator实现原理 创建一个指针对象,指向当前数据结构的起始位置.也就是说,遍历器对象本质上,就是一个指针对象. 第一次调用指针对象的next方法,可以将指针指向数据结构的第一个成员. 第二次调 ...

  7. ORA-00214: control file 控制文件版本不一致

    故障现象:今日学习oracle控制文件移动和修改,发现本机安装oracle数据库启动时只使用了一个控制文件.如下:SQL> select * from V$controlfile; STATUS ...

  8. python学习笔记(六)文件夹遍历,异常处理

    python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...

  9. 文件MD5查看器工具与源码实现及下载

    由于工作中经常需要查看文件的MD5值,先前网上找了几个MD5值查看工具,但基本都是选择文件,还没有复制功能,于是今天我就自己编写了个MD5查看工具,支持文件拖拽查看,并可以复制功能. 由于本工具比较小 ...

随机推荐

  1. 牛客网PAT练习场-个位数的统计

    思路:每接受一个字符,便统计一次即可 题目地址:https://www.nowcoder.com/questionTerminal/a2063993dd424f9cba8246a3cf8ef445 # ...

  2. JS手写call、bind、apply

    call方法的实现 Function.prototype.MyCall = function(content,...args){ const self = content || window; con ...

  3. 第3关-input()函数

    第3关-input()函数 一.input()函数 import time print('亲爱的同学:') time.sleep(1) print('我们愉快地通知您,您已获准在霍格沃茨魔法学校就读. ...

  4. 从零搭建Spring Boot脚手架(7):整合OSS作为文件服务器

    1. 前言 文件服务器是一个应用必要的组件之一.最早我搞过FTP,然后又用过FastDFS,接私活的时候我用MongoDB也凑合凑合.现如今时代不同了,开始流行起了OSS. Gitee: https: ...

  5. IDEA 代码自动补全/自动联想 功能

    IDEA 的代码补全/自动联想功能,可以仅仅输入几个字母,自动补全一整段代码,非常舒服. 代码自动联想功能在 设置 -> Editor -> Live Templates 查看,很多都非常 ...

  6. Mybatis Log plugin 破解!!!

    前言 今天重新装了IDEA2020,顺带重装了一些插件,毕竟这些插件都是习惯一直在用,其中一款就是Mybatis Log plugin,按照往常的思路,在IDEA插件市场搜索安装,艹,眼睛一瞟,竟然收 ...

  7. 使用 K8s 进行作业调度实战分享

    最近在公司的数据同步项目(以下简称 ZDTP)中,需要使用到分布式调度数据同步执行单元,目前使用的方案是将数据同步执行单元打包成镜像,使用 K8s 进行调度. 在 ZDTP 中,数据同步的动作可抽象成 ...

  8. Windows Server 2012 R2 时间同步

    最近的项目两台服务器都是Windows Server 2012的系统,需要做时间同步,现在是一些从网上搜罗的步骤总结. 具体就是配置windows的注册表: 一.服务端配置 (NTP服务器,客户端将根 ...

  9. java前端知识点整理

    1.jsp内置对象?作用? request :客户端请求,包含来自 GET/POST,提供了几个用于获取 cookie, 和 session 的方法 response :网页传回用户端的回应 page ...

  10. unity3d屏幕截图功能

    function OnGUI(){ if(GUI.Button(Rect(Screen.width*0.5-50,Screen.height*0.5-50,100,100),"screen& ...