模拟实现 DOS 一些命令 比如dir ab*则 显示ab开头的文件 怎么做

chang9223 2012-11-15 01:51:38
目前假如有几个字符串为文件名
String s1="abcd";
String s2= "cdab";
String s3="cdabcd";
输入 dir ab* 后 只找到ab开头的字符串,
如“abcd” s1字符串匹配
输入dir *ab 只显示ab结尾的字符串
如“cdab” s2 字符串匹配
和在 windows DOS下一样,
问题是
如何在我输入 dir ab*之后找到是 s1这个字符串匹配 而s2 s3 不匹配
输入 dir *ab之后找到是 s2这个字符串匹配 而s1 s3 不匹配
...全文
288 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
山那頭 2013-01-08
  • 打赏
  • 举报
回复
引用 6 楼 zqfddqr 的回复:
这个像不?http://blog.csdn.net/zqfddqr/article/details/6745484
呵呵,不错,谢谢分享……
zqfddqr 2013-01-08
  • 打赏
  • 举报
回复
huntor 2012-11-16
  • 打赏
  • 举报
回复
建议使用jdk1.7新增的nio2提供的DirectoryStream。
try (DirectoryStream<Path> stream = Files.newDirectoryStream(dir, "ab*")) {
           for (Path entry: stream) {
               System.out.println(entry);
           }
       } catch (DirectoryIteratorException ex) {
           // I/O error encounted during the iteration, the cause is an IOException
           throw ex.getCause();
       }
yousun4688 2012-11-15
  • 打赏
  • 举报
回复
建议使用Runtime 这个类,可以执行dos,命令,并通过发挥的进程流进行筛选
akemi_homura 2012-11-15
  • 打赏
  • 举报
回复
引用 楼主 chang9223 的回复:
目前假如有几个字符串为文件名 String s1="abcd"; String s2= "cdab"; String s3="cdabcd"; 输入 dir ab* 后 只找到ab开头的字符串, 如“abcd” s1字符串匹配 输入dir *ab 只显示ab结尾的字符串 如“cdab” s2 字符串匹配 和在 windows DOS下一样, ……
正则
ryanhuang2004 2012-11-15
  • 打赏
  • 举报
回复
提问前建议多看看java的api文档. String类有两个方法, startWith和endWith.
chang9223 2012-11-15
  • 打赏
  • 举报
回复



如图所示

62,614

社区成员

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

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