亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > Java > 正文

Java實現大文件的切割與合并操作示例

2024-07-14 08:41:25
字體:
來源:轉載
供稿:網友

本文實例講述了Java實現大文件的切割與合并操作。分享給大家供大家參考,具體如下:

這里實現對大文件的切割與合并。

按指定個數切(如把一個文件切成10份)或按指定大小切(如每份最大不超過10M),這兩種方式都可以。

在這里我只是給大家寫下我自己的一點簡單的代碼:

package io2;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.SequenceInputStream;import java.util.ArrayList;import java.util.Collections;import java.util.Enumeration;import javax.swing.JFileChooser;public class FileSplitDemo {/*** 實現對大文件的切割與合并。 按指定個數切(如把一個文件切成10份)或按指定大小切(如每份最大不超過10M),這兩種方式都可以。*/public static void main(String[] args) {JFileChooser jfc = new JFileChooser();// Swing中的選擇文件// 選擇文件int result = jfc.showOpenDialog(null);// 顯示框架用于選擇文件File file = null;// 要切割的文件File dest = null;// 目的地文件try {if (result == JFileChooser.APPROVE_OPTION) {// 選中文件// 切割文件file = jfc.getSelectedFile();// 用戶選擇的文件dest = new File(file.getParent(), "spliFile");cutingFile(file, dest);// 切割方法// 2合并(運行時,直接對剛才切割的那些文件碎片進行合并)String fileName = file.getName();mergeDemo(dest, fileName);// 合并文件}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}private static void mergeDemo(File dest, String fileName)throws IOException {// 健壯性防護(用File對象去開道)if (!dest.exists()) {throw new RuntimeException("文件不存在");}// 用一個文件數組將里面的文件都裝起來File parth[] = dest.listFiles();// 返回一個抽象路徑名數組,這些路徑名表示此抽象路徑名表示的目錄中的文件。if (parth.length == 0) {throw new RuntimeException("碎片不存在");}// y用序列流來合并ArrayList<FileInputStream> list = new ArrayList<FileInputStream>();// for (int i = 0; i < parth.length; i++) {// list.add(new FileInputStream(parth[i]));//不能這樣,這樣合并出來的文件是順序亂的// }for (int i = 0; i < parth.length; i++) {list.add(new FileInputStream(new File(dest, fileName + (i + 1)+ "part")));// 套接技術,文件加的順序要和原文件一樣}// 枚舉對象接口Enumeration<FileInputStream> en = Collections.enumeration(list);SequenceInputStream sq = new SequenceInputStream(en);// 寫入到新文件中FileOutputStream fou = new FileOutputStream(new File(dest, fileName));byte buf[] = new byte[1024];sq.read(buf);int len = 0;while ((len = sq.read(buf)) > 0) {fou.write(buf, 0, len);}fou.close();sq.close();}private static void cutingFile(File source, File dest) {// 切割try {FileInputStream fis = new FileInputStream(source);if (!dest.exists()) {// 文件操作IO流要判斷文件是否存在。dest.mkdir();}byte buf[] = new byte[1024 * 1024];// 1Mfis.read(buf);int len = 0;int cout = 1;while ((len = fis.read(buf)) != -1) {// 用OUT流來切割文件FileOutputStream fout = new FileOutputStream(new File(dest,source.getName() + (cout++) + "part"));fout.write(buf, 0, len);fout.close();}} catch (FileNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

文件切割:把一個文件切割成多個碎片,每個碎片的大小不超過1M。自己可把功能進一步擴展:切割前的文件名、長度,切割后的碎片個數、文件名等信息可寫到第一個碎片中或另外用properties把這些寫到配置文件中。

文件合并:這里簡單假設已知被合并目錄的File對象和原文件的名字。其實這些完全可以做成活的,如把這些信息保存在碎片文件或配置文件,也可以同樣用文件選擇對話框來讀取用戶的選擇。

希望本文所述對大家java程序設計有所幫助。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩乱码在线视频| 国产精品极品美女粉嫩高清在线| 欧洲中文字幕国产精品| 久久精彩免费视频| 日韩有码视频在线| 久久久噜噜噜久久中文字免| 久久久爽爽爽美女图片| 国产精品美女久久久久av超清| 亚洲永久免费观看| 国产精品678| 国产主播欧美精品| 国产欧美在线播放| 中文字幕亚洲自拍| 午夜精品福利视频| 亚洲护士老师的毛茸茸最新章节| 欧美裸身视频免费观看| 久久久久中文字幕2018| 亚洲午夜久久久久久久| www.亚洲人.com| 国产精品老牛影院在线观看| 日本高清+成人网在线观看| 日韩欧美在线视频观看| 日韩黄色高清视频| 美女久久久久久久久久久| 亚洲激情电影中文字幕| 人人做人人澡人人爽欧美| 97视频在线观看视频免费视频| 8050国产精品久久久久久| 亚洲天堂免费在线| 国产不卡av在线| 欧美理论在线观看| 亚洲尤物视频网| 国产精品久久久久久久av大片| 国产不卡精品视男人的天堂| 欧美黄色性视频| 一色桃子一区二区| 久久成人人人人精品欧| 国产精品一二区| 在线中文字幕日韩| 日韩在线视频观看| 国产mv久久久| 国产精品视频精品视频| 国产成人avxxxxx在线看| 国产aⅴ夜夜欢一区二区三区| 成人福利在线视频| 成人天堂噜噜噜| 日韩美女视频免费看| 成人网在线免费看| 国内精品国产三级国产在线专| 中文字幕亚洲国产| 91精品国产自产91精品| 午夜精品福利电影| 国产精品都在这里| 久久国产精品亚洲| 91精品国产亚洲| 911国产网站尤物在线观看| 亚洲色图第三页| 国产精品久久久久久久久久ktv| 亚洲精品国产精品久久清纯直播| 97在线免费观看| 久久久久久久网站| 疯狂做受xxxx欧美肥白少妇| 亚洲国产精品成人一区二区| 久久国产精品网站| 一区二区三区视频在线| 91超碰caoporn97人人| 国产精品久久视频| 精品亚洲永久免费精品| 91福利视频网| 国内精品模特av私拍在线观看| 日韩精品在线观看视频| 91在线国产电影| 日韩一区视频在线| 国产亚洲一级高清| 91久久国产综合久久91精品网站| 国产精品免费网站| 亚洲精品一区二区在线| 欧美日韩免费在线观看| 成人a视频在线观看| 欧美午夜片欧美片在线观看| 2019中文字幕免费视频| 久久久久久欧美| 亚洲大胆人体视频| 国产精品免费观看在线| 永久免费看mv网站入口亚洲| 麻豆乱码国产一区二区三区| 欧美日韩国产一区二区三区| 欧美亚洲另类视频| 国产欧美久久久久久| 国产偷国产偷亚洲清高网站| 538国产精品一区二区在线| www.欧美免费| 97**国产露脸精品国产| 欧美一区二粉嫩精品国产一线天| 欧美www在线| 欧美亚洲激情在线| 国产美女扒开尿口久久久| 亚洲va久久久噜噜噜| 日韩欧美亚洲范冰冰与中字| 国产在线98福利播放视频| 日韩电影免费观看在线观看| 97人洗澡人人免费公开视频碰碰碰| 91精品在线看| 欧美日韩色婷婷| 久久久国产精品亚洲一区| 国产婷婷97碰碰久久人人蜜臀| 欧美性感美女h网站在线观看免费| 在线看福利67194| 一区二区在线视频| 亚洲成人av中文字幕| 亚洲男人天堂视频| 日韩在线观看免费网站| 91久久夜色精品国产网站| 九九久久综合网站| 超碰日本道色综合久久综合| 成人深夜直播免费观看| 亚洲激情中文字幕| 亚洲色图第一页| 69久久夜色精品国产69| 国产中文字幕日韩| 国产欧美一区二区三区久久人妖| 亚洲美腿欧美激情另类| 亚洲精品国产精品久久清纯直播| 日韩精品在线第一页| 国产精品视频99| 亚洲欧美综合区自拍另类| 成人免费在线视频网站| 国产精品第10页| 久久精品国产欧美亚洲人人爽| 亚洲人成网站在线播| 中文字幕在线亚洲| 久久99青青精品免费观看| 国产精品视频最多的网站| 国产亚洲成精品久久| 午夜免费久久久久| 91色中文字幕| 国产精品久久久久久久9999| 欧美另类极品videosbest最新版本| 亚洲国产另类久久精品| 992tv成人免费视频| 亚洲国产黄色片| 欧美洲成人男女午夜视频| 欧美激情一区二区三级高清视频| 国产精品一区二区三区在线播放| 久久99国产综合精品女同| 国产精品中文久久久久久久| 久久这里只有精品99| 日韩网站免费观看| 中文字幕在线看视频国产欧美| 久久99久国产精品黄毛片入口| 久久成人18免费网站| 欧美寡妇偷汉性猛交| 久久99久国产精品黄毛片入口| 日韩精品在线影院| 欧美日韩精品在线观看| 在线日韩欧美视频| 亚洲片国产一区一级在线观看| 久久久之久亚州精品露出| 中文字幕日韩专区| 久久久精品亚洲| 国产日韩av在线| 久久精品久久久久电影| 国产精品自拍网| 国产亚洲精品美女久久久久|