1700481179
}
1700481180
1700481181
}
1700481182
1700481183
这3个实现类都关联到了FileManager,这个类有什么用呢?它是负责与操作系统交互的。要把UNIX的命令迁移到Windows上运行,就需要调用Windows的低层函数,实现起来较复杂,而且和我们本章要讲的内容没有太大关系,所以这里采用示例性代码代替,如代码清单34-6所示。
1700481184
1700481185
代码清单34-6 文件管理类
1700481186
1700481187
public class FileManager{
1700481188
1700481189
//ls命令
1700481190
1700481191
public static String ls(String path){
1700481192
1700481193
return”file1\nfile2\nfile3\nfile4”;
1700481194
1700481195
}
1700481196
1700481197
//ls-l命令
1700481198
1700481199
public static String ls_l(String path){
1700481200
1700481201
String str=“drw-rw-rw root system 1024 2009-8-20 10:23 file1\n”;
1700481202
1700481203
str=str+“drw-rw-rw root system 1024 2009-8-20 10:23 file2\n”;
1700481204
1700481205
str=str+“drw-rw-rw root system 1024 2009-8-20 10:23 file3”;
1700481206
1700481207
return str;
1700481208
1700481209
}
1700481210
1700481211
//ls-a命令
1700481212
1700481213
public static String ls_a(String path){
1700481214
1700481215
String str=”.\n..\nfile1\nfile2\nfile3”;
1700481216
1700481217
return str;
1700481218
1700481219
}
1700481220
1700481221
}
1700481222
1700481223
以上都是比较简单的方法,大家有兴趣可以自己实现一下,以下提供3种思路:
1700481224
1700481225
❑通过java.io.File类自己封装出类似UNIX的返回格式。
1700481226
1700481227
❑通过java.lang.Runtime类的exec方法执行DOS的dir命令,产生类似的ls结果。
1700481228
[
上一页 ]
[ :1.700481179e+09 ]
[
下一页 ]