URL url = new URL("http://127.0.0.1:8080/WebTest/test/1.txt");
File file = new File(url);现在知道WebRoot\test下有1.txt想对其进行删除,通过url为什么报错呢?
我不能写WebRoot啊!将来发布的项目名还不定。
就是想获得1.txt是位于电脑的文件目录可以执行delete方法。

解决方案 »

  1.   

    这样:
    String path = request.getRealPath("/test/1.txt");
    File file = new File(path);
      

  2.   

    通过虚拟目录来获得应用程序在服务器上的真实目录地址
    这样就可以操作文件了
        URL url = new URL("http://127.0.0.1:8080/WebTest/test/1.txt");
    你这样如果可以直接操作文件的话     那你可以把人家服务器上的文件都删了   O(∩_∩)O哈哈~
    URL url = new URL("http://www.baidu.com/WebTest/test/1.txt");  娃哈哈   开个玩笑 
      

  3.   

    就是要把服务器上的文件删除啊 
    那这个构造函数到底是怎么个用法。
    File file = new File(new URL("http://127.0.0.1:8080/WebTest/test/1.txt"));
    为什么回报错呢?
    那到底怎么用法呢?
    谢谢各位!帮忙解释一下吧!
      

  4.   

    你的得到他的位子啊, this.getServletConfig().getServletContext().getRealPath("/")+“/WebTest/test/1.txt”; 这样就可得到他的准确路径。你的删除操作也就可以进行了.
      

  5.   

    JSP有URL这个类的吗?很少这样用,在jsp中操作文件一般都使用jspsmartupload,没有自己写过
    为什么需要自己写呢?
      

  6.   

    有URL这个东东的     但不是用在自己的WEB应用程序中的   通常用于链接外部资源用的
      

  7.   

    It's URI,not URL.
    jdk —— File(URI uri) 通过将给定的 file: URI 转换成一个抽象路径名来创建一个新的 File 实例.
    然后就是您想删除文件的方式貌似不正确,就如2楼的兄弟说的那样
    应该在后台通过文件的绝对地址对文件进行操作
      

  8.   

    在servlet中用四楼兄弟的方法可以搞定。
    貌似多了一个“/”
      

  9.   

    2楼写的正确,也比较简洁,但貌似jdk1.6已经将这个request方法划入  过时。
    用4楼的方法也可以解决。
    uri是对外部资源的引用,不能用作对本服务器硬盘文件的操作貌似 。