当前位置: 首页 > news >正文

最好建网站系统的软件化妆品产品的自建网站有哪些

最好建网站系统的软件,化妆品产品的自建网站有哪些,简单的响应式网页,简述程序开发的流程一、前言 各位亲爱的们#xff0c;之前介绍过了上传超大文件到MinIO#xff1a; MinIO分片上传超大文件#xff08;纯服务端#xff09;MinIO分片上传超大文件#xff08;非纯服务端#xff09; 这里最后再补充一下从MinIO下载超大文件。 二、从MinIO分片下载大文件 …一、前言 各位亲爱的们之前介绍过了上传超大文件到MinIO MinIO分片上传超大文件纯服务端MinIO分片上传超大文件非纯服务端 这里最后再补充一下从MinIO下载超大文件。 二、从MinIO分片下载大文件 2.1、确定文件大小 根据文件名查找MinIO上对应文件的大小。 核心APIminioClient.statObject(StatObjectArgs args)。 StatObjectResponse statObjectResponse minioClient.statObject(StatObjectArgs.builder().bucket(bucketName).object(fileName).build()); long totalLength statObjectResponse.size(); System.out.println(目标文件总大小: totalLength);2.2、分片下载 这里举例分片大小为1000个字节根据文件总大小计算出分片数最后将每个分片保存下来。 核心APIminioClient.getObject(GetObjectArgs args)。 final long CHUNK_LENGTH 1000; // 从目标文件开始下载 long startByte 0l; long chunkCount (long) Math.ceil((double) totalLength / CHUNK_LENGTH); System.out.println(预计总分片数: chunkCount); String targetPath C://tmp; for (long i 0; i chunkCount; i) {GetObjectResponse response minioClient.getObject(GetObjectArgs.builder().bucket(bucketName).object(fileName).offset(startByte).length(CHUNK_LENGTH).build());String chunkFilePath targetPath // (i 1) .part;FileOutputStream fileOutputStream new FileOutputStream(chunkFilePath);byte[] buffer new byte[1024];int bytesRead;while ((bytesRead response.read(buffer)) ! -1) {fileOutputStream.write(buffer, 0, bytesRead);}System.out.println(分片已下载: chunkFilePath 大小: new File(chunkFilePath).length());startByte (i 1) * CHUNK_LENGTH; }2.3、合并分片 将每个分片文件合并到一个文件里。 String mergedFilePath targetPath // result.txt; BufferedOutputStream bos new BufferedOutputStream(new FileOutputStream(mergedFilePath)); for (long i 0; i chunkCount; i) {String chunkFilePath targetPath // (i 1) .part;BufferedInputStream bis new BufferedInputStream(new FileInputStream(chunkFilePath));byte[] buffer new byte[1024];int bytesRead;while ((bytesRead bis.read(buffer)) ! -1) {bos.write(buffer, 0, bytesRead);}bis.close(); } bos.close();三、完整测试代码 import io.minio.*; import java.io.*;public class MinioMain4Download {static CustomMinioClient minioClient new CustomMinioClient(MinioClient.builder().endpoint(http://192.168.2.195:9000).credentials(minioUser, minioUser123).build());// 测试桶static String bucketName test;static {try {boolean found minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucketName).build());if (!found) {minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucketName).build());}} catch (Exception e) {throw new RuntimeException(e);}}public static void main(String[] args) throws Exception {// 大小 1295 ByteString fileName 202410181656357348160;// 第一步查询目标文件大小StatObjectResponse statObjectResponse minioClient.statObject(StatObjectArgs.builder().bucket(bucketName).object(fileName).build());long totalLength statObjectResponse.size();System.out.println(目标文件总大小: totalLength);// 第二步分片下载(最简单的同步方式)// 假设1000个字节作为一个分片final long CHUNK_LENGTH 1000;// 从目标文件开始下载long startByte 0l;long chunkCount (long) Math.ceil((double) totalLength / CHUNK_LENGTH);System.out.println(预计总分片数: chunkCount);String targetPath C://tmp;for (long i 0; i chunkCount; i) {GetObjectResponse response minioClient.getObject(GetObjectArgs.builder().bucket(bucketName).object(fileName).offset(startByte).length(CHUNK_LENGTH).build());String chunkFilePath targetPath // (i 1) .part;FileOutputStream fileOutputStream new FileOutputStream(chunkFilePath);byte[] buffer new byte[1024];int bytesRead;while ((bytesRead response.read(buffer)) ! -1) {fileOutputStream.write(buffer, 0, bytesRead);}System.out.println(分片已下载: chunkFilePath 大小: new File(chunkFilePath).length());startByte (i 1) * CHUNK_LENGTH;}// 第三步合并String mergedFilePath targetPath // result.txt;BufferedOutputStream bos new BufferedOutputStream(new FileOutputStream(mergedFilePath));for (long i 0; i chunkCount; i) {String chunkFilePath targetPath // (i 1) .part;BufferedInputStream bis new BufferedInputStream(new FileInputStream(chunkFilePath));byte[] buffer new byte[1024];int bytesRead;while ((bytesRead bis.read(buffer)) ! -1) {bos.write(buffer, 0, bytesRead);}bis.close();}bos.close();System.out.println(合并完成);} }
http://www.w-s-a.com/news/731549/

相关文章:

  • 云南大学网站建设解析到网站怎样做
  • 网站维护的要求包括锦溪网站建设
  • 金站网.营销型网站学校安全教育网站建设
  • 临沂市建设局网站公示军事新闻头条2023
  • 购物网网站建设lamp 做网站
  • 做网站网站庄家html5网站开发技术
  • 无锡门户网站制作电话广告设计公司的未来
  • 白云区专业网站建设网页设计模拟试题答案
  • 毕业设计网站代做多少钱制作旅游网站设计概述
  • 网站开发维护运维无人在线电视剧免费观看
  • 电子商务网站建设开题报告展馆网站建设
  • 门户网站建设的背景和意义手机网站前
  • 国内免费视频素材无水印素材网站国家最新消息
  • 襄阳seo站内优化学做网站论坛教程
  • 文明网站建设情况报告wordpress伪静态配置
  • 牙科网站模板个人微信网站建设
  • 厦门公司注册网站dw做简单小说网站
  • 网站建好以后每年都续费么wordpress 仿聚划算
  • 单位网站建设收费标准网上开店铺需要多少钱
  • 灯饰网站需要这么做申请域名的流程
  • 软件下载网站怎么赚钱wordpress减少数据库查询
  • 什么兼职网站可以做视频剪辑常见的推广平台有哪些
  • 网站开发是用html还是jsp设迹官网
  • 查公司信息的网站怎么学wordpress
  • 白银做网站长春一般建一个网站需要多少钱
  • 帮人做钓鱼网站的人网络推广培训职业学校
  • 淘宝客有必须做网站吗网站开发的形式有( )
  • 网站建设:上海珍岛网页版qq空间登录
  • 网站服务器ipteahouse wordpress主题
  • 深州市住房保障和城乡建设局网站做网站公司叫什么