码迷,mamicode.com
首页 > 编程语言 > 详细

java 文件切割,为什么在关闭流的时候报错,51行

时间:2016-05-23 18:40:00      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

 1 package java_IO.Test_1.File_Split_and_SequeceDemo;
 2 
 3 import java.io.File;
 4 import java.io.FileInputStream;
 5 import java.io.FileOutputStream;
 6 import java.io.IOException;
 7 
 8 public class FileSplit {
 9 
10     private File file;
11     private int size;
12 
13     public FileSplit(File file, int size) {
14         // TODO Auto-generated constructor stub
15         this.file = file;
16         this.size = size * 1024 * 1024;
17 
18     }
19 
20     public void Spliting() throws IOException {
21         // TODO Auto-generated method stub
22 
23         // 读取源文件
24         FileInputStream fis = new FileInputStream(file);
25 
26         // 创建碎片文件存放目录,若碎片存放目录不存在刚创建
27         File dir = new File(file.getParent(), "filesPart");
28         if (!dir.exists()) {
29             dir.mkdirs();
30         }
31 
32         // 创建缓存区
33         byte[] bufb = new byte[1024 * 1024];
34         int len = 0;
35 
36         for (int i = 1;; i++) {
37             int sumSize = 0;
38             File filePart = new File(dir, i + ".part");
39             FileOutputStream fos = new FileOutputStream(filePart);
40             while (sumSize < size) {
41                 if ((len = fis.read(bufb)) != -1) {
42                     fos.write(bufb, 0, len);
43                     sumSize += len;
44                 }
45 
46             }
47             fos.close();
48 
49             
50         }
51         fis.close();
52         
53         
54     }
55     
56         
57 }

上述代码实现的是一个文件切割的功能,构造函数参数file是接收要切割的文件,size是用户指定的每个碎片文件的大小 ,问题是在我最后也就是51行关闭读取文件流的时候,报错,说是什么编译错误。求个大大神指点。如看懂给我留言

java 文件切割,为什么在关闭流的时候报错,51行

标签:

原文地址:http://www.cnblogs.com/yaoandhong/p/5520733.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!