博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
流与文件课后作业3
阅读量:5130 次
发布时间:2019-06-13

本文共 1884 字,大约阅读时间需要 6 分钟。

package wenjianyuliu;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;//编写一个文件分割工具,能把一个大文件分割成多个小的文件。并且能再次把它们合并起来得到完整的文件public class CutFile {    public static void main(String[] args) {        //调用cutFile()函数 传人参数分别为 (原大文件,切割后存放的小文件的路径,切割规定的内存大小)        cutFile("E:\\新建文件夹\\poem2.txt", "E:\\80747",1024 * 1024 * 20);    }    private static void cutFile(String src, String endsrc, int num) {        FileInputStream fis = null;        File file = null;        try {            fis = new FileInputStream(src);            file = new File(src);            //创建规定大小的byte数组            byte[] b = new byte[num];            int len = 0;            //name为以后的小文件命名做准备            int name = 1;            //遍历将大文件读入byte数组中,当byte数组读满后写入对应的小文件中            while ((len = fis.read(b)) != -1) {                //分别找到原大文件的文件名和文件类型,为下面的小文件命名做准备                String name2 = file.getName();                int lastIndexOf = name2.lastIndexOf(".");                String substring = name2.substring(0, lastIndexOf);                String substring2 = name2.substring(lastIndexOf, name2.length());                FileOutputStream fos = new FileOutputStream(endsrc + "\\\\"+ substring + "-" + name + substring2);                //将byte数组写入对应的小文件中                fos.write(b, 0, len);                //结束资源                fos.close();                name++;            }        } catch (FileNotFoundException e) {            e.printStackTrace();        } catch (IOException e) {            e.printStackTrace();        } finally {            try {                if (fis != null) {                    //结束资源                    fis.close();                }            } catch (IOException e) {                e.printStackTrace();            }        }    }}

 

 

 

 
 
分类:

转载于:https://www.cnblogs.com/Evak/p/9980335.html

你可能感兴趣的文章
Visual Studio基于CMake配置opencv1.0.0、opencv2.2
查看>>
SDN第四次作业
查看>>
django迁移数据库错误
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
字符串处理
查看>>
HtmlUnitDriver 网页内容动态抓取
查看>>
ad logon hour
查看>>
罗马数字与阿拉伯数字转换
查看>>
Eclipse 反编译之 JadClipse
查看>>
距离公式汇总以及Python实现
查看>>
Linux内核态、用户态简介与IntelCPU特权级别--Ring0-3
查看>>
第23月第24天 git命令 .git-credentials git rm --cached git stash clear
查看>>
java SE :标准输入/输出
查看>>
[ JAVA编程 ] double类型计算精度丢失问题及解决方法
查看>>
好玩的-记最近玩的几个经典ipad ios游戏
查看>>
PyQt5--EventSender
查看>>
Sql Server 中由数字转换为指定长度的字符串
查看>>
tmux的简单快捷键
查看>>
[Swift]LeetCode922.按奇偶排序数组 II | Sort Array By Parity II
查看>>
VC6.0调试技巧(一)(转)
查看>>