# wintop-file-spring-boot-starter
**Repository Path**: javacse/wintop-file-spring-boot-starter
## Basic Information
- **Project Name**: wintop-file-spring-boot-starter
- **Description**: No description available
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-04-30
- **Last Updated**: 2021-04-30
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# wintop-file-spring-boot-starter
---
云图文件 Springboot starter
> 当前项目为开发版本(待持续集成)
#### 1. 使用方式
- 需要使用文件功能的项需要引入一下坐标
```xml
com.wintop
wintop-file-spring-boot-starter
0.0.1-RELEASE
```
- 项目配置文件配置
```yaml
local:
file:
enable: true #开启文件上传配置
disk-path: D:/opt #文件存储磁盘路径
font-setting: D:/opt #中文字包路径 (用于word转pdf)
upload-path: #文件上传路径 (默认 upload)
```
#### 2.接口说明
> 1.单文件上传
**接口:**
- FileBean upload(MultipartFile file,boolean isOriginalFileName) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|file |是 |MultipartFile |文件对象 |
|isOriginalFileName |是 |boolean |是否保留原文件名上传(false为 uuid,true为原文件名) |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| realName|String |文件真实名称|
| fileSize|String |文件大小 |
| filePath|String |文件真实路径 |
| fileType|String |文件类型|
| md5Name|String |文件上传过后的名称(当**isOriginalFileName**参数为true是参数值为当前文件的原文件名)|
| encoder|String |地址栏文件名称(当文件名称为中文或者特殊符号时,自动格式化成浏览器地址栏可以识别的名称)|
---
> 2.多文件上传
**接口:**
- List upload(MultipartFile[] file,boolean isOriginalFileName) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|file |是 |MultipartFile[] |文件数组对象 |
|isOriginalFileName |是 |boolean |是否保留原文件名上传(false为 uuid,true为原文件名) |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| realName|String |文件真实名称|
| fileSize|String |文件大小 |
| filePath|String |文件真实路径 |
| fileType|String |文件类型|
| md5Name|String |文件上传过后的名称(当**isOriginalFileName**参数为true是参数值为当前文件的原文件名)|
| encoder|String |地址栏文件名称(当文件名称为中文或者特殊符号时,自动格式化成浏览器地址栏可以识别的名称)|
---
> 3.文件删除
**接口:**
- boolean delete(String fileName);
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileName |是 |String |使用文件md5Name名称 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| |boolean |true为删除成功,false为删除失败|
---
> 4.文件下载
**接口:**
- ResponseEntity download(String fileName, String realName, HttpServletResponse responset) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileName |是 |String |使用文件md5Name名称 |
|realName |是 |String |使用文件realName名称(当参数为null时 下载的文件名为md5Name名称) |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| | |返回当前文件|
---
> 5.文件预览
**接口:**
- void fileView(String fileName, HttpServletResponse responset) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileName |是 |String |使用文件md5Name名称 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| | |显示当前文件信息|
---
> 6.文件打包zip
**接口:**
- FileBean unzip(List fileName,List filePath,String zipName) throws IOException, Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileName |是 |String |使用文件md5Name名称 |
|filePath |是 |String |使用文件filePath参数值 |
|zipName |是 |String |zip压缩包名称 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| | |返回zip压缩包信息|
---
> 6.word转pdf
**接口:**
- FileBean wordAsPdf(String fileForWord) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileForWord |是 |String |使用文件md5Name名称 ***注:*** 只支持word文件的两种格式 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| | |返回pdf文件信息|
---
> 7.文件拷贝
**接口:**
- FileBean fileCopy(String fileName) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileName |是 |String |使用文件md5Name名称 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| | |返回新文件信息|
---
> 8.返回文件base64
**接口:**
- String fileByBase64(String fileName) throws Exception;
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|fileName |是 |String |使用文件md5Name名称 |
**输出参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
| | |返回文件base64编码 (解码后可以转换成文件)|
---
#### 代码示例 [代码示例](./simple/simple.java)