com.zoi7.file.uploader.document.LargeFile Maven / Gradle / Ivy
package com.zoi7.file.uploader.document;
import com.zoi7.file.uploader.base.BaseDocument;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
/**
* LargeFile 文档类.
*/
public class LargeFile extends BaseDocument {
private static final long serialVersionUID = 1L;
private InputStream file; // 文件输入流
private String originName; // 原文件名称
public LargeFile() {}
public LargeFile(InputStream file, String originName, String fileType) {
this.originName = originName;
this.fileType = fileType;
this.file = file;
this.filename = generateUUIDName(originName);
}
public byte[] getContentBytes() throws IOException {
if (file != null) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
byte[] buffer = new byte[1024 * 4];
int n;
while ((n = file.read(buffer)) != -1) {
outputStream.write(buffer, 0, n);
}
return outputStream.toByteArray();
}
return null;
}
public InputStream getFile() {
return file;
}
public void setFile(InputStream file) {
this.file = file;
}
public String getOriginName() {
return originName;
}
public void setOriginName(String originName) {
this.originName = originName;
}
@Override
public String toString() {
return "LargeFile{" +
"file=" + file +
", originName='" + originName + '\'' +
", filename='" + filename + '\'' +
", fileType='" + fileType + '\'' +
'}';
}
}