默认如果文件已经存在,则不覆盖,可以设置allowOverwrite=true 。
多文件
批量接入的文件处理完毕后,可以通过toFiles输出到指定目录下 。
toFiles有三种多态方法
public void toFiles(File destinationDir, Rename rename) throws IOException // ①public void toFiles(Rename rename) throws IOException // ②public void toFiles(Iterable<File> iterable) throws IOException { // ③①:第一个参数是文件夹路径,第二个参数是文件名处理类型 。
NO_CHANGE:文件名不修改 。
PREFIX_DOT_THUMBNAIL:追加 thumbnail.到文件名的开头 。例如,给定 picture.jpg,结果为thumbnail.picture.jpg 。
SUFFIX_DOT_THUMBNAIL:.thumbnail追加到文件扩展名之前的文件名 。例如,给定 picture.jpg,结果为 picture.thumbnail.jpg
SUFFIX_HYPHEN_THUMBNAIL:-thumbnail追加到文件扩展名之前的文件名 。例如,给定 picture.jpg,结果为 picture-thumbnail.jpg 。
②:此方法是①的简化,等价于①中的第一个参数destinationDir为空 。
③:参数是Iterable类型,也就是说可以给每个文件设置输出文件名 。
代码示例如下:
package cn.programtalk;import net.coobird.thumbnailator.Thumbnails;import net.coobird.thumbnailator.name.Rename;import java.io.File;import java.io.IOException;import java.util.List;public class ThumbnailsToFilesDemo { public static void main(String[] args) throws IOException { Thumbnails.of("input/logo.jpg", "input/logo.png") .scale(1.75) // 默认如果文件已经存在,则不覆盖,可以设置allowOverwrite=true 。.allowOverwrite(true) // 可以不指定文件后缀,默认是png //.toFiles(new File("output"), Rename.NO_CHANGE); //.toFiles(Rename.NO_CHANGE); .toFiles(List.of(new File("output/1"), new File("output/2"))); }}输出到输出流
单流
toOutputStream是将一个文件输出到输出流中 。
package cn.programtalk;import net.coobird.thumbnailator.Thumbnails;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStream;public class ThumbnailsToOutputStreamDemo { public static void main(String[] args) throws IOException { OutputStream os = new FileOutputStream("output/logo.png"); Thumbnails.of("input/logo.jpg") .scale(1.75) .toOutputStream(os); }}多流
toOutputStreams是将一个文件输出到多个输出流中 。
package cn.programtalk;import net.coobird.thumbnailator.Thumbnails;import java.io.FileOutputStream;import java.io.IOException;import java.util.List;public class ThumbnailsToOutputStreamsDemo { public static void main(String[] args) throws IOException { Thumbnails.of("input/logo.jpg", "input/logo.png") .scale(1.75) // 这里文件后缀最好指定,写入到磁盘的文件没有文件后缀 。.toOutputStreams(List.of(new FileOutputStream("output/1.jpg"), new FileOutputStream("output/2.png"))); }}github:***/ProgramTalk1024/thumbnailator-tutorial.git
推荐阅读
- 骨马能登记吗
- 松茸保存的方法,野生松茸怎么保存方法
- 鱼被咬伤了怎么办,鱼被咬了能自己恢复吗
- Excel文件只读模式应该怎样取消
- Word文档要如何插入Excel表格
- pvc和pe材质的区别
- 如何在Excel中绘图,Excel文件中应该怎样画图
- cdr应该怎么才可以删除不要的部分
- lol如何关闭录制功能,英雄联盟点击左侧录制按钮声音
