# LinuxFileSelectorJ **Repository Path**: swsk33/LinuxFileSelectorJ ## Basic Information - **Project Name**: LinuxFileSelectorJ - **Description**: 用于Linux的java文件选择器包。 - **Primary Language**: Java - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-06-13 - **Last Updated**: 2022-06-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LinuxFileSelectorJ-适用于Linux的java文件选择器包 ### 这是一个简单的包,用于linux系统上java开发者简易的创建一个文件选择对话框。 *继上次开发的[WinFileSelectorJ](https://gitee.com/swsk33/WinFileSelectorJ)包之后,这次将上次的包的源代码经过改进并优化,做出了这次适用于Linux操作系统的文件选择器包-LinuxFileSelectorJ,其界面和用法较之于WinFileSelectorJ有所不同但大体相似。* ### 功能和特点: 1,创建一个文件选择窗口,支持单选、多选,只显示指定的文件类型(过滤)。
2,创建一个文件保存路径选择的对话框,支持单选,过滤。
3,带有图片预览功能。
4,自己重写了扁平化的界面。
5,支持可以选择文件或者文件夹、只能选择文件和只能选择文件夹三种选择模式。
### 下载地址:[点击进入下载jar包](https://gitee.com/swsk33/LinuxFileSelectorJ/releases) #### 一、界面说明 通过相应的代码即可唤出文件选择器,语法(用法)将会在下面说明。界面如下:
![主界面](https://images.gitee.com/uploads/images/2020/0617/192839_ca7dd322_5591575.png)
![快速索引](https://images.gitee.com/uploads/images/2020/0617/192839_eb84a26e_5591575.png)
![图片预览](https://images.gitee.com/uploads/images/2020/0617/192840_c5d05148_5591575.png)
选择文件很简单,选择文件点击确定或者直接双击该文件即可。可以多选时,按住ctrl即可多选。
每次选择完成文件之后会记录上一次的位置,配置文件生成于用户文件夹的下的.WinFileSelectorJ目录下(```~/.WinFileSelectorJ```)。 #### 二、开发用法 ### 1,添加依赖,有下列两种情况: ①Eclipse直接添加jar:先下载这个jar包并把这个包导入到IDE里面,例如eclipse。不知道如何导入请查看教程:[eclipse导入外部jar包](https://blog.csdn.net/czbqoo01/article/details/72803450)
②Maven工程:在项目的配置文件pom.xml中的``````标签里加入下列依赖,此操作无需在上面手动下载jar包(推荐):
``` com.gitee.swsk33 linux-file-selector 1.1.12 ``` ### 2,导入swsk33.linuxfileselectorj下所有类或者需要的类。(import swsk33.linuxfileselectorj.*;) ### 3,语法: **说在最前:下面语法示例中用了最快捷的方法去执行了某个类中的某个方法。**
**实际上这两种方式执行效果相同:**
**方式一:**
```A a=new A();```
```a.af();```
**方式二:**
```new A().af();```
**上述方式一、二效果相同,都是执行了A类里的af方法。只是方法一先生成了对象。下面示例基本上用方法二进行演示。**
-------------------------------------------------------------------------------------------------------------------- **文件选择器的方法返回值基本上就是String或者Object[],单选窗口的返回值就是所选的文件路径,多选窗口的返回值是多个被选中的文件路径被存放在一个Object数组。如果是点击了“取消”按钮或者是关闭按钮,也会有返回值,其中单选时会返回一个空字符串(""),多选时会返回一个长度为1的Object数组,里面只有一个为"null"的值({"null"})。**
1,创建一个不带过滤的文件选择器单选窗口(返回值String):
```new FileSelectDialog().createSingleSelectionDialog("窗口的标题",文件选择模式);```
**文件选择模式有三个内容如下:**
```FileSelectDialog.ALL_FILES_ALLOW```:既可以选择文件也可以选择文件夹。
```FileSelectDialog.FILE_ONLY```:只能选择文件。
```FileSelectDialog.DIR_ONLY```:只能选择文件夹。
**例如:创建一个标题为“选择文件”、只能选择文件的文件选择器对话框并输出其选择的文件路径**
``` String s = new FileSelectDialog().createSingleSelectionDialog("选择文件", FileSelectDialog.FILE_ONLY); System.out.println(s); ``` 2,创建一个带过滤的文件选择器单选窗口(返回值String):
```new FileSelectDialog().createSingleSelectionDialog("窗口的标题",文件选择模式,要显示的文件扩展名的字符串数组);```
这个是带过滤显示的文件选择器窗口,他只会显示你制定类型的文件。
先自己定一个String数组,里面放入你要指定显示的文件类型扩展名,再把该String数组对象放入第三个参数。
**例如:创建一个标题为“选择文件”、只能选择文件的文件选择器对话框,且只显示png和jpg文件,并输出其选择的文件路径**
``` String[] type = {"png", "jpg"}; //指定显示文件的字符串数组 String s = new FileSelectDialog().createSingleSelectionDialog("选择文件", FileSelectDialog.FILE_ONLY,type); System.out.println(s); ``` 3,创建一个不带过滤的文件选择器多选窗口(返回值Object[]):
```new FileSelectDialog().createMultipleSelectionDialog("窗口标题",文件选择模式);```
**例如:创建一个标题为“选择文件”、只能选择文件的多选文件选择器对话框,并逐个输出其选择的文件路径**
``` Object[] o = new FileSelectDialog().createMultipleSelectionDialog("选择文件", FileSelectDialog.FILE_ONLY); for (Object name : o) { System.out.println(name.toString()); } ``` 4,创建一个带过滤的文件选择器多选窗口(返回值Object[]):
```new FileSelectDialog().createMultipleSelectionDialog("窗口标题",文件选择模式,要显示的文件扩展名的字符串数组);```
**例如:创建一个标题为“选择文件”、只能选择文件的多选文件选择器对话框,且只显示png和jpg文件,并逐个输出其选择的文件路径**
``` String[] type = {"png", "jpg"}; //指定显示文件的字符串数组 Object[] o = new FileSelectDialog().createMultipleSelectionDialog("选择文件", FileSelectDialog.FILE_ONLY, type); for (Object name : o) { System.out.println(name.toString()); } ``` 5,创建一个不带过滤的文件保存路径选择对话框(返回值String):
```new FileSaveDialog().createSaveDialog("对话框标题",文件选择模式);```
*和上述的选择对话框不同,文件保存路径选择的对话框只能单选,并且可以在文件类型下拉菜单选择相应的文件类型,选择相应的文件类型时只会显示文件夹和选中的相应类型的文件,当前目录下存在输入的文件名时会提示是否覆盖。方法返回值即为文件保存的完整路径。*
**文件选择模式有两个内容如下:**
```FileSaveDialog.FILE_ONLY```:指定保存的目录及其文件名。
```FileSaveDialog.DIR_ONLY```:只指定保存的目录及其文件名。
6,创建一个带过滤的文件保存路径选择对话框(返回值String):
```new FileSaveDialog().createSaveDialog("对话框标题",文件选择模式,指定显示的文件类型数组);```
参数以及使用和上面文件选择窗口类似。
##### 这就是所有的说明,感谢观看!