首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 出现错误找不到File?why? [已结贴,结贴人:bbs0422]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 15:36:11 楼主
    题目是:在目录下面见一个文件夹mydir1,再在mydir1下面建一个mydir2再在mydir2里面建立一个myfile.txt
    import java.IO.*;
    public class TestFile{
    public static void main(String [] args){
      String separator=.separator;
      String filename="myfile.txt";
      String directory="mydir1"+separator+"mydir2";
      File f=new File(directory,filename);
      if(f.exits()){
      System.out.println("文件名:"+f.getAbsolutePath());
      System.out.println("文件大小:"+f.length());
      }else{
      f.getParentFile().mkdirs();
      try{
      f.createNewFile();
      }catch(IOException e){
      e.printStrackTrace();
      }
      }
      }
    }
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AWUSOFT
    • 等级:
    发表于:2008-04-15 15:38:121楼 得分:4
    应该先取得当然的目录才行呀.
    默认好像是JDK里的Bin路径吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AWUSOFT
    • 等级:
    发表于:2008-04-15 15:38:472楼 得分:1
    或者是用绝对路径.就是在哪个盘哪个目录下

    C:\....
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 15:43:013楼 得分:0
    代码本身错误就多。
    找个IDE,免得哪么麻烦。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 15:45:234楼 得分:4
    import java.io.*; 
    public class test{
    public static void main(String [] args){
      String separator=".separator";
      String filename="myfile.txt";
      String directory="mydir1"+separator+"mydir2";
      File f=new File(directory,filename);
      if(f.exists()){
      System.out.println("文件名:"+f.getAbsolutePath());
      System.out.println("文件大小:"+f.length());
      }else{
      f.getParentFile().mkdirs();
      try{
      f.createNewFile();
      }catch(IOException e){
      e.printStackTrace();
      }
      }
      }
    }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 15:46:235楼 得分:1
    在Eclipse下默认路径是指你的工程路径。
    在非IDE下,一般的默认路径是指class的目录。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 16:05:316楼 得分:3
    Java code
    import java.io.*; public class Demo{ public static void main(String[] args){ String filename="myfile.txt"; String path="E:/mydir1/mkdir2"; try{ File dir = new File(path); if(!dir.exists()) dir.mkdirs(); File file=new File(path+File.separator+filename); if(!file.exists()) file.createNewFile(); }catch(Exception e){ e.printStackTrace(); } System.out.println("Done"); } }


    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 16:07:047楼 得分:0
    可运行,仅供参考,推荐自己多看API,多动手!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 16:24:308楼 得分:2
    Java code
    import java.io.*; class test{ public static void main(String [] args){ String separator="\\"; String filename="myfile.txt"; String directory="mydir1"+separator+"mydir2"; File f=new File(directory,filename); if(f.exists()){ System.out.println("文件名:"+f.getAbsolutePath()); System.out.println("文件大小:"+f.length()); }else{ f.getParentFile().mkdirs(); try{ f.createNewFile(); }catch(IOException e){ e.printStackTrace(); } } } }


    上面代码在我电脑是成功了,不知道是不是LZ要的效果
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 16:41:239楼 得分:0
    来个绝对路径不就完了吗
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 19:19:2310楼 得分:3
    引用楼主 bbs0422 的帖子:
    题目是:在目录下面见一个文件夹mydir1,再在mydir1下面建一个mydir2再在mydir2里面建立一个myfile.txt
    import java.IO.*;
    public class TestFile{
    public static void main(String [] args){
      String separator=.separator;
      String filename="myfile.txt";
      String directory="mydir1"+separator+"mydir2";
      File f=new File(directory,filename);
      if(f.exits()){
      System.out.println("文件名:"+f…

    你呀 这一句有问题
    String separator=.separator;
    应当是
    String separator=File.separator;
    还有呀你的
    String directory="mydir1"+separator+"mydir2";
    这一句,,你
    directory 可存在呀,,
    加一句
    System.out.println(directory);
    看看可是你的路径呀,,
    遇到问题要学会去分析呀,,举一反三就好了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 21:36:0211楼 得分:2
    Java code
    import java.io.*; public class Overloading { public static void main(String[] args) { String separator = ".separator"; String filename = "myfile.txt"; String directory = "mydir1" + separator + "mydir2"; File f = new File(directory, filename); if (f.exists()) { System.out.println("文件名:" + f.getAbsolutePath()); System.out.println("文件大小:" + f.length()); } else { f.getParentFile().mkdirs(); try { f.createNewFile(); } catch (IOException e) { e.printStackTrace(); } } } }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xiaomaha
    • 等级:
    发表于:2008-04-15 21:39:5912楼 得分:0
    Java code
    import java.io.File; public class Files { public static void main(String []args) { Files.setFilesName("d:/"); } public static void setFilesName(String url){ File file=new File(url); File[] fis =file.listFiles(); for(int i=0;i<fis.length;i++){ if(fis[i].isFile()){ System.out.println(fis[i].getName()); }else{ Files.setFilesName(fis[i].getAbsolutePath()); } } } }
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-15 22:28:3613楼 得分:0
    应该先取得当前的目录,然后再操作。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-04-17 11:29:5414楼 得分:0
    public class TestFile {
    public static void main(String[] args) {
    String separator = File.separator;
    String filename = "myfile.txt";
    String directory = "mydir1" + separator + "mydir2";
    File f = new File(directory, filename);
    if (f.exists()) {
    System.out.println("文件名:" + f.getAbsolutePath());
    System.out.println("文件大小:" + f.length());
    } else {
    f.getParentFile().mkdirs();
    try {
    f.createNewFile();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    }
    }


    改了一下,没有什么大问题.
    你的mydir1应该放当前目录下,和这个编译好的文件同目录就OK了.
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved