【发布时间】:2014-01-18 11:51:41
【问题描述】:
我已经编写了简单的 java 代码来在 Linux 中显示文件列表,以将其用于使用 TCP 的 FTP 程序(我将一步一步地使用所有功能)。我在谷歌搜索了大约半小时后发布了这个问题。
import java.io.*;
class FileList
{
public static void main(String args[])
{
String dirname="/home/vaibhav/Test";
File f1=new File(dirname);
String sl[]=f1.list();
System.out.print(f1.list()+"......."+sl.length+" files found.");
for(int i=0;i<sl.length;i++)
{
System.out.print(sl[i]+" ");
}
}
}
输出:
vaibhav@vaibhav-VirtualBox:~/Java$ javac FileList.java
vaibhav@vaibhav-VirtualBox:~/Java$ java FileList
Exception in thread "main" java.lang.NullPointerException
at FileList.main(FileList.java:10)
我的目录测试和 Java 内容:
vaibhav@vaibhav-VirtualBox:~$ cd /home/vaibhav/Test
vaibhav@vaibhav-VirtualBox:~/Test$ dir
1 2
vaibhav@vaibhav-VirtualBox:~/Test$ ls -al
total 8
drwxrwxrwx 2 vaibhav vaibhav 4096 Jan 18 15:04 .
drwxr-xr-x 25 vaibhav vaibhav 4096 Jan 18 16:50 ..
-rw-rw-rw- 1 vaibhav vaibhav 0 Jan 18 15:04 1
-rw-rw-rw- 1 vaibhav vaibhav 0 Jan 18 15:04 2
vaibhav@vaibhav-VirtualBox:~/Test$ cd
vaibhav@vaibhav-VirtualBox:~$ cd /home/vaibhav/Java
vaibhav@vaibhav-VirtualBox:~/Java$ ls -al
total 20
drwxr-xr-x 2 vaibhav vaibhav 4096 Jan 18 16:52 .
drwxr-xr-x 25 vaibhav vaibhav 4096 Jan 18 16:50 ..
-rw-r--r-- 1 vaibhav vaibhav 990 Jan 18 16:52 FileList.class
-rw-r--r-- 1 vaibhav vaibhav 477 Jan 18 16:52 FileList.java
-rw-r--r-- 1 vaibhav vaibhav 487 Jan 18 16:52 FileList.java~
当我将 String dirname 更改为也是 pwd 的 /home/vaibhav/Java 时,程序执行得很好。
出了什么问题? 谢谢。
【问题讨论】:
-
for循环第10行
-
Mmmh ...我对此表示怀疑,为什么我们没有从
print获得输出。我认为 sl 为空。是什么给了f1.isDirectory()。 -
不,sl 不为空。在运行代码之前,我向其中添加了 2 个文件。
-
和密码有关吗?
标签: java linux nullpointerexception filepath