递归调用时,出现了空指针

潇洒子弦 2011-10-18 09:42:29
public class SearchPicture{
public static void main(String args[]){
File f = new File("E:");
tree(f);
}

public static void tree(File f){
String[] s = null;
File[] trees = f.listFiles();
for(int i=0;i<trees.length;i++)
{
if(trees[i].isDirectory()){
tree(trees[i]);
}
s = trees[i].getName().split("\\.");
if(s[s.length-1].equals("jpg")) {
System.out.println(trees[i].getAbsolutePath());
}
}
}
}
出现了空指针
怎么解决
...全文
232 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
潇洒子弦 2011-10-19
  • 打赏
  • 举报
回复
就是文件夹权限的问题谢谢你们 可以加QQ群146244911共同学习
潇洒子弦 2011-10-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 mtv0199 的回复:]
Java code

public static void tree(File f){
if(f.getName().equals("System Volume Information"))
return;
//加这句,这个文件夹是无法访问的。
String[] s = null;
File[] trees = f.……
[/Quote]
恩,我一发完贴,就想到了,有的文件夹拒绝访问,谢谢你
幽饮烛 2011-10-19
  • 打赏
  • 举报
回复
在 for(int i=0;i<trees.length;i++) 这一行报的错。
trees 为 null 至于为什么,你看一下你的 E 盘里面那些文件夹你没有权限访问就知道了。

s = trees[i].getName().split("\\.");
if(s[s.length-1].equals("jpg")) {

这算什么代码。。。。。

为什么不这样判断 if (trees[i].getName().endsWith("jpg")) 自己去比一下执行速度那个快吧。
mtv0199 2011-10-18
  • 打赏
  • 举报
回复
public static void tree(File f){
if(f.getName().equals("System Volume Information"))
return;
//加这句,这个文件夹是无法访问的。
String[] s = null;
File[] trees = f.listFiles();
for(int i=0;i<trees.length;i++)
{
if(trees[i].isDirectory()){
tree(trees[i]);
}
s = trees[i].getName().split("\\.");
if(s[s.length-1].equals("jpg")) {//应该可能是这里报错了nullPointException吧!if not please show me locationSystem.out.println(trees[i].getAbsolutePath());
}
}

在tree方法前面加这句话。
sharme 2011-10-18
  • 打赏
  • 举报
回复
public class SearchPicture{
public static void main(String args[]){
File f = new File("E:");
tree(f);
}

public static void tree(File f){
String[] s = null;
File[] trees = f.listFiles();
for(int i=0;i<trees.length;i++)
{
if(trees[i].isDirectory()){
tree(trees[i]);
}
s = trees[i].getName().split("\\.");
if(s[s.length-1].equals("jpg")) {//应该可能是这里报错了nullPointException吧!if not please show me locationSystem.out.println(trees[i].getAbsolutePath());
}
}
}
}
KG071 2011-10-18
  • 打赏
  • 举报
回复
断点 -> debug -> 问题解决

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧