java中如何找到应用程序的存放位置?请高手解答

解决方案 »

  1.   

    System.getProperties().get("user.dir")
      

  2.   

    我觉得楼上的有点问题吧!你看下api中的System类吧!
      

  3.   

    从 classpath 中去找,肯定在某一个路径里。
      

  4.   

    用 getClass().getResource( 所在类的名字 ).getPath();
    可以获得 class 的存放路径。
      

  5.   

    System.getProperty("user.dir")获得当前编译的java程序所在的目录位置。
      

  6.   

    是否当前路径?
    System.out.println(new File(".").getCanonicalPath());
      

  7.   

    最稳妥的方法,设置环境变量,在程序中用System.getProperty("XXX")来得到!
    System.getProperty("user.dir") 实际上也是设置了变量的!
    如果是web应用程序可以用 this.getServlet().getServletContext().getRealPath("") 得到应用程序根目录! 如果是在jsp里面那就更方便
      

  8.   

    java中如何找到应用程序的存放位置?---------------
    自己写个搜索函数 . : )
    import java.io.*;
    import java.util.*;public class T 
    {
    public static void main(String[] args) throws Exception
    {
    Vector v = new Vector();

    search("07.jpg",new File("F:/Yzl"),v);

    for (Enumeration e = v.elements(); e.hasMoreElements();)
              System.out.println(((File)e.nextElement()).getAbsolutePath());
    }

    // 搜索函数
    /**
     *描述: 搜索函数.
     *
     *filename - 要搜索的函数名
     *path - 被搜索的目录
     *v - 存放结果集
     */
    public static void search(String filename,File path,Vector v)
    {
    File[] files = path.listFiles();

    if ( files == null) return ;

    for (int i = 0 ; i < files.length; i ++)
    {
    if (files[i].getName().equals(filename))
    v.addElement(files[i]);

    }

    for (int i = 0 ; i < files.length; i ++)
    {
    if (files[i].getName().indexOf('.') == -1)
    search(filename,files[i],v);
    }
    }
    }F:\>javac T.javaF:\>java T
    F:\Yzl\07.jpg
    F:\Yzl\Y\07.jpg
      

  9.   

    filename - 要搜索的应用程序名
      

  10.   

    另,将
    if (files[i].getName().indexOf('.') == -1)
    search(filename,files[i],v);
    该为:
    if (files[i].isDirectory())
    search(filename,files[i],v);
      

  11.   

    javasript<button onclick="alert('点击后会弹出的东西')">在这里是按钮上显示的内容</button>
      

  12.   

    那如果想找比如word,excel等的安装路径,上面的方法不行啊?
      

  13.   

    怎么会不行呢?
    search("WINWORD.EXE",new File("C:/"),v); // 此处是在C盘下找,你可以设定一下.
    search("EXCEL.EXE",new File("C:/"),v);
      

  14.   

    to yuzl32(Hello!有酒醉) :thank you!!!