黑马程序员技术交流社区

标题: 创建一个FileInputStream的问题 [打印本页]

作者: 喻尚健    时间: 2011-11-5 23:01
标题: 创建一个FileInputStream的问题
我每次创建一个FileInputStream对象的时候,总是要指定了完整的地址才能创建成功,否则就提示找不到文件
比如FileInputStream is=new FileInputStream("D:\\workspace\\review\\review\\iostudy\\1.txt");
有的时候看教程FileInputStream is=new FileInputStream("1.txt");这种形式也可以创建成功啊。
搞不明白啊。应该说1.txt在当前路径下的话就可以创建成功吧,我把1.txt也放在了当前路径下啊,难道是我对这个当前路径理解错了?
这个1.txt究竟要放到什么位置才能算当前路径呢?java的安装路径?
我也尝试了下FileInputStream is=new FileInputStream("当前类.java");来创建,还是提示找不到文件。

作者: 黄健    时间: 2011-11-5 23:29
可以先执行一下FileOutputStream is=new FileOutputStream("1.txt");
看它创建在哪个目录下
作者: 郭敏    时间: 2011-11-5 23:50
加一下打印语句:       
System.out.println(System.getProperty("user.dir"));  你就可又清楚的知道,当前路径。
作者: 成杰    时间: 2011-11-5 23:54
毕老师是在doc下面编译的,由于在编译时,要找到当前文件,因此创建的文件对象就在他编译的那个当前路径下,如果你是用eclipse的话,最后在前面加上盘符。
作者: 王德云    时间: 2011-11-6 01:44
本帖最后由 wangdeyun 于 2011-11-6 01:45 编辑

你如果写成这样FileInputStream is=new FileInputStream("D:\\workspace\\review\\review\\iostudy\\1.txt");代表的是绝对路径。
你就写成FileInputStream is=new FileInputStream("1.txt");代表的是相对路径,相对于你这个java源文件所放的路径。
个人理解,欢迎指正!





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2