打字猴:1.700481199e+09
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
1700481229 ❑通过JNI(Java Native Interface)来调用与操作系统有关的动态链接库,当然前提是需要自己写一个动态链接库文件。
1700481230
1700481231 3个具体的命令都已经解析完毕,我们再来看看如何建立一条处理链,由于建链的任务已经移植到抽象命令类,我们就先来看抽象类Command,如代码清单34-7所示。
1700481232
1700481233 代码清单34-7 抽象命令
1700481234
1700481235 public abstract class Command{
1700481236
1700481237 public abstract String execute(CommandVO vo);
1700481238
1700481239 //建立链表
1700481240
1700481241 protected final List<?extends CommandName>buildChain(Class<?extends
1700481242
1700481243 CommandName>abstractClass){
1700481244
1700481245 //取出所有的命令名下的子类
1700481246
1700481247 List<Class>classes=ClassUtils.getSonClass(abstractClass);
1700481248
[ 上一页 ]  [ :1.700481199e+09 ]  [ 下一页 ]