如何使此文件i/O Java程序在Unix中运行?
下面是打印所有文件的程序&;指定路径中的文件夹
import java.io.File;
public class ListDirectoryRecursive{
public static void listRecursive(File dir){
if(dir.isDirectory()){
File[] items = dir.listFiles();
for(File item : items){
System.out.println(item.getAbsoluteFile());
if(item.isDirectory()){
listRecursive(item);
}
}
}
}
public static void main(String[] args){
/* Unix path is: /usr/home/david/workspace/JavaCode */
File dir = new File("C:\\Users\\david\\workspace\\JavaCode");
listRecursive(dir);
}
}
如何使这个java程序在Unix上运行?使该程序可移植的标准方法是什么
编辑:我想,我们知道在任何操作系统上,用户主目录都是环境设置的一部分,其值在windows中为“c:\users\david”,在Unix中为“/user/home/david”
# 1 楼答案
请不要重复密码
使用
System.getProperty("user.home");
获取/usr/home/david
或C:\Users\david\
目录 就像谢谢交流
# 2 楼答案
使硬编码的绝对路径
C:\\Users\\david\\workspace\\JavaCode
相对# 3 楼答案
通过
args
将目录作为参数:(当然,检查
args.length
是否足够)然后你可以简单地做
在窗户上,以及
在UNIX上。这有一个明显的优点,即允许您使用此程序列出任何目录,而不是硬编码路径