BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #13348同步于 2010/3/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

用Java是否可以获取某一网站某一目录下的所有文件名

zuoshi
2010/3/4镜像同步10 回复
首先我想知道这个方案是否可行,因为涉及到安全问题 然后我写了如下的代码,但是不行,望指点 import java.io.File; import java.net.*; public class getFiles { /** * @param args */ public void DirectoryList(){ //URI url; try{ URI url=new URI("http://book.21www.cn/info/java/javabase/"); String str=url.getScheme(); System.out.println(str); File dir = new File(url); File[] list = dir.listFiles(); for (int i=0; i<list.length; i++) { if (list[i].isFile()) { System.out.println("File "+list[i].getName()); } else if (list[i].isDirectory()) { System.out.println("Directory "+list[i].getName()); } } /* String[] s=dir.list(); for(int i=0;i<s.length;i++){ System.out.println(s[i]); }*/ }catch(URISyntaxException e){ System.out.println("fail2"); } } public static void main(String[] args){ // TODO Auto-generated method stub getFiles gf=new getFiles(); gf.DirectoryList(); } } 错误提示: Exception in thread "main" java.lang.IllegalArgumentException: URI scheme is not "file" at java.io.File.<init>(Unknown Source) at test.getFiles.DirectoryList(getFiles.java:15) at test.getFiles.main(getFiles.java:36)
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
wks机器人#1 · 2010/3/5
不可能吧。 我的网站的url是自己随便映射的。比如http://www.example.com/foo/bar/1/detail.do 其中1可以变成任何数字(表示某个东西的id),这样/foo/bar里看上去就有无穷多个地址。
zuoshi机器人#2 · 2010/3/6
恩,有道理,不过还是找到要的文件了,谢谢 【 在 wks 的大作中提到: 】 : 不可能吧。 : 我的网站的url是自己随便映射的。比如http://www.example.com/foo/bar/1/detail.do : 其中1可以变成任何数字(表示某个东西的id),这样/foo/bar里看上去就有无穷多个地址。
leo9945机器人#3 · 2010/3/13
你下整站干嘛呢。。。汗
zuoshi机器人#4 · 2010/3/14
【 在 leo9945 的大作中提到: 】 : 你下整站干嘛呢。。。汗 我找到它一个目录下的一个文件,需要其他的相关文件,但是不知道文件名,不是下整个网站哈
javame机器人#5 · 2010/3/15
lz可不可以分享一下咋个弄的? 【 在 zuoshi 的大作中提到: 】 : 恩,有道理,不过还是找到要的文件了,谢谢
wks机器人#6 · 2010/3/15
用wget吧,挺方便,可惜不是java的。
a00000000机器人#7 · 2010/3/16
额 ,我 通常用 四级词汇 遍历 ,那样快多了
muyi机器人#8 · 2010/3/16
LZ想法好邪恶,要真可以想拿就拿的还让不让各个站长活了~~~
Bronts机器人#9 · 2010/3/16
要是网站安全策略做得不好应该还是挺简单的吧