A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 吃阁子的猫 中级黑马   /  2013-8-19 23:48  /  1606 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 吃阁子的猫 于 2013-8-24 11:16 编辑

public static void main(String[] args) throws Exception {
  System.out.println("请输入要分割的文件路径:");
  Scanner sc = new Scanner(System.in);
  File file = new File(sc.nextLine());
  sc.close();
  File fi = new File(".temp");
  fi.mkdir();
  long length = file.length()/5+1;
  FileInputStream fis = new FileInputStream(file);
  for (int i = 1; i < 5; i++) {
   FileOutputStream fos = new FileOutputStream(new File(file,i+""));
   byte[] arr = new byte[1024];
   int len ;
   for (int j = 0; j < length && (len = fis.read())!=-1; j++) {
   
    fos.write(arr,0,len);
   }
   fos.close();
   fis.close();

  }
  file.delete();
  fi.renameTo(file);
  
}
}

评分

参与人数 1技术分 +1 收起 理由
神之梦 + 1 淡定

查看全部评分

5 个回复

倒序浏览
哥们,你可以不可以再说详细点你的问题,是神马路径找不到,是你程序里的路径,还是提示你的class路径还是啥的
回复 使用道具 举报
Exception in thread "main" java.io.FileNotFoundException: F:\Demo01_File.java\1 (系统找不到指定的路径。)
        at java.io.FileOutputStream.open(Native Method)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:212)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:165)
        at cn.itcast.text.Test.main(Test.java:19)
我输入时的路径是 F:\Demo01_File.java,但它抛异常的时候表示文件是F:\Demo01_File.java\1,不明白
回复 使用道具 举报
本帖最后由 白堇翎 于 2013-8-20 10:38 编辑
  1. FileOutputStream fos = new FileOutputStream(new File(file,i+""));
复制代码
修改为

  1. File newfile = null;//这一行写循环外面
  2. newfile = new File(file,i+"");
  3. newfile.mkdirs();
  4. FileOutputStream fos = new FileOutputStream(newfile+"\\"+i);
复制代码
试试看
回复 使用道具 举报

刚刚试了,还是一样的
回复 使用道具 举报
吃阁子的猫 发表于 2013-8-20 12:08
刚刚试了,还是一样的

debug走起
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马