快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

java文件的相对路径

好几次,在java中用相对路径打开文件,都报找不到文件的错误,改成绝对路径后正常。
今天预备检查一下,相对路径到底应该怎么写。

测试代码:
public class TestFilePath {
? public static void main(String[] args) {
??? TestFilePath testFilePath1 = new TestFilePath();
??? File file = new File("test.txt");
??? System.out.println(file.getAbsolutePath());;
? }
}

到命令行下用java命令执行该class文件,在不同的路径下执行,取得的结果不相同。
如下:
执行方式1:
F:/2004/projects/jbproject/myServer/classes>java test_bak.TestFilePath
F:/2004/projects/jbproject/myServer/classes/test.txt
执行方式2:
F:/2004/projects/jbproject/myServer>java -classpath classes test_bak.TestFilePath
F:/2004/projects/jbproject/myServer/test.txt
执行方式3:
F:/2004/projects/jbproject>java -classpath myServer/classes test_bak.TestFilePath
F:/2004/projects/jbproject/test.txt

可见,相对目录的起点,不是class文件所在的路径,而是,java解释器所在的位置。

不过,jbuilder下执行时,会以Jbuilder默认的命令执行,H:/JBuilder9/jdk1.4/bin/javaw -classpath ..... test_bak.TestFilePath
执行结果是F:/2004/projects/jbproject/myServer/test.txt
所以,假如在jbuilder下开发java应用程序操作文件,相对目录的起点一般是classes/的上一层目录,也就是应用目录,写出来的程序,
执行时再以-classpath classes 执行,就可以和开发时得到相同的结果。

?






返回类别: 教程
上一教程: 第一讲 Java语言概述
下一教程: 利用UDP Sockets技术实现IP多点传送1(转中华技术网)

您可以阅读与"java文件的相对路径"相关的教程:
· 获取类的class文件的绝对路径
· java中找到资源文件的路径
· JSP、SERVLET中的相对路径和绝对路径
· Java中对文件的读写操作之比较
· JAVA中对文件的读写操作之比较
    微笑服务 优质保证 索取样品