java 字符串格式 直接转为txt格式上传到oss中
字符串转为InputStream
package com.pugongying.luckdraw.utils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.multipart.MultipartFile;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.UUID;
@Slf4j
public class FileUtils {
public static InputStream convertStrToIns(String stringInfo) {
try {
InputStream inputStream = new ByteArrayInputStream(stringInfo.getBytes("UTF-8"));
return inputStream;
} catch (Exception e) {
log.error(" 异常");
return null;
}
}
public static String getSuffix(String fileName) {
if (fileName.contains(".")){
return fileName.substring(fileName.lastIndexOf("."));
}
return "";
}
public static String getFileName(String fileOriginName) {
return System.currentTimeMillis() + FileUtils.getSuffix(fileOriginName);
}
public static String getUUID() {
return UUID.randomUUID().toString().replace("-", "");
}
public static String upload(MultipartFile file, String path, String fileName) {
String newFileName = FileUtils.getFileName(fileName);
String realPath = path + newFileName;
File dest = new File(realPath);
if (!dest.getParentFile().exists()) {
dest.getParentFile().mkdir();
}
try {
file.transferTo(dest);
return "/static/" + newFileName;
} catch (IllegalStateException e) {
e.printStackTrace();
return "";
} catch (IOException e) {
e.printStackTrace();
return "";
}
}
}
上传到oss
package com.pugongying.luckdraw.utils;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.OSSException;
import com.aliyun.oss.model.CannedAccessControlList;
import com.aliyun.oss.model.CreateBucketRequest;
import com.aliyun.oss.model.PutObjectRequest;
import com.aliyun.oss.model.PutObjectResult;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;
public class AliyunOSSUtil {
public static String upload(File file, String fileName) {
if (null == file) {
return null;
}
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
return null;
}
return upload(fileInputStream, fileName);
}
public static String upload(InputStream inputStream, String fileName) {
String endpoint = "";
String accessKeyId = "";
String accessKeySecret = "";
String bucketName = "";
String fileHost = "";
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
String dateStr = format.format(new Date());
if (null == inputStream) {
return null;
}
OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
try {
if (!ossClient.doesBucketExist(bucketName)) {
ossClient.createBucket(bucketName);
CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucketName);
createBucketRequest.setCannedACL(CannedAccessControlList.PublicRead);
ossClient.createBucket(createBucketRequest);
}
String name = FileUtils.getSuffix(fileName);
String fileUrl = fileHost + "/" + (dateStr + "/" + UUID.randomUUID().toString().replace("-", "") + name);
PutObjectResult result = ossClient.putObject(new PutObjectRequest(bucketName, fileUrl, inputStream));
ossClient.setBucketAcl(bucketName, CannedAccessControlList.PublicRead);
if (null != result) {
return "https://object-code.oss-cn-hangzhou.aliyuncs.com/" + fileUrl;
}
} catch (OSSException oe) {
} finally {
ossClient.shutdown();
}
return null;
}
}