Java 中使用 IO 流实现大文件的分拆与合并
2016-12-22 21:21
696 查看
记录一下大文件的拆分和合并,代码如下:
Java分割文件的方法:
Java合并文件的方法:
调用合并方法时,注意传入需要合并的文件路径的数组即可。
Java分割文件的方法:
//文件分割的方法(方法内传入要分割的文件路径以及要分割的份数) private static void splitFileDemo(File src, int m) { if(src.isFile()) { //获取文件的总长度 long l = src.length(); //获取文件名 String fileName = src.getName().substring(0, src.getName().indexOf(".")); //获取文件后缀 String endName = src.getName().substring(src.getName().lastIndexOf(".")); System.out.println(endName); InputStream in = null; try { in = new FileInputStream(src); for(int i = 1; i <= m; i++) { StringBuffer sb = new StringBuffer(); sb.append(src.getParent()).append("\\").append(fileName) .append("_data").append(i).append(endName); System.out.println(sb.toString()); File file2 = new File(sb.toString()); //创建写文件的输出流 OutputStream out = new FileOutputStream(file2); int len = -1; byte[] bytes = new byte[10*1024]; while((len = in.read(bytes))!=-1) { out.write(bytes, 0, len); if(file2.length() > (l / m)) { break; } } out.close(); } } catch (Exception e) { e.printStackTrace(); } finally { try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } }
Java合并文件的方法:
//文件合并的方法(传入要合并的文件路径) private static void joinFileDemo(String... src) { for(int i = 0; i < src.length; i++) { File file = new File(src[i]); String fileName = file.getName().substring(0, file.getName().indexOf("_")); String endName = file.getName().substring(file.getName().lastIndexOf(".")); StringBuffer sb = new StringBuffer(); sb.append(file.getParent()).append("\\").append(fileName) .append(endName); System.out.println(sb.toString()); try { //读取小文件的输入流 InputStream in = new FileInputStream(file); //写入大文件的输出流 File file2 = new File(sb.toString()); OutputStream out = new FileOutputStream(file2,true); int len = -1; byte[] bytes = new byte[10*1024]; while((len = in.read(bytes))!=-1) { out.write(bytes, 0, len); } out.close(); in.close(); } catch (Exception e) { e.printStackTrace(); } } System.out.println("文件合并完成!"); }
调用合并方法时,注意传入需要合并的文件路径的数组即可。
相关文章推荐
- 使用java IO实现指定后缀的文件合并为一个文件
- 使用java.io.*操作文件的拆分与合并,Application一例!
- 使用java.io.*操作文件的拆分与合并,Application一例!
- 学习之使用Java IO 来实现复制文件的操作
- Java中使用IO流实现大文件的分割与合并
- 使用java.io.*操作文件的拆分与合并,Application一例
- Java中使用IO流实现大文件的分裂与合并
- 使用java.io.*操作文件的拆分与合并,Application一例!
- Java中使用IO流实现大文件的分裂与合并
- Java中使用IO流实现大文件的分裂与合并
- Java 使用IO流实现大文件的分割与合并实例详解
- 使用java.io.*操作文件的拆分与合并,Application一例!
- JAVA中使用IO流实现大文件的分裂与合并
- 使用Java实现对dbf文件的简单读写
- 利用IO的知识,实现一个程序列出某个目录下的所有的”.java”文件。
- 用java的i/o读写文件,举一反三看清io的使用
- jQuery教程(十二)使用不苛刻的java script代码实现多文件上传
- Java 实现大文件的分割与合并
- 使用Java实现对dbf文件的简单读写
- JAVA实现压缩文件的方法(使用java.util.zip.*)