windows下的某个文件夹或文件的"快捷方式", java.io.File 认为是.lnk的文件. 而linux下的某个文件夹的“链接”,java.io.File 认为是文件夹.linux下的链接内容如下:格式非常简单
---------------
IntxLNK<路径>
如何才能确定它是文件夹还是文件夹的链接???

解决方案 »

  1.   

    需要用到Sun公司的专用类库,包含在JDK中的
    sun.awt.shell.ShellFolder  这个类。
    要获得一个文件是否是链接,可以使用以下方法:File file = new File("a file path");//new 一个File对象
    ShellFolder sf = ShellFolder.getShellFolder(file);
    boolean isLink = sf.isLink();
    //如果想获得链接文件的真实文件,可以如下:
    File realFile = null;
    if(isLink)
    {
      realFile = sf.getLinkLocation();
    }
      

  2.   

    Windows下的快捷方式文件内容太复杂,通过扩展名判断不保险,
    用ShellFolder这个类很方便。
    哦,对了,这个类的父类是java.io.File
      

  3.   


    在windows下面,如果是个无效的快捷方式..  它即然弹出个对话框"快捷方式存在问题"..  我倒呵呵。 也不错了。 我主要是解决linux下的问题。
      

  4.   

    http://blog.csdn.net/yebanghua/article/details/7295873
    我写的