Java学习-043-获取文件在目录中的路径
我们在日常的电脑使用中,经常需要在当前目录或当期目录及其子目录中查找文件,并获取相应的文件路径名。在我们的自动化测试中,也经常需要确认文件在目录中是否成功生成或已存在,因而我写了一个小方法来实现。
获取文件在目录中的路径方法源码如下所示:
/**
* <strong>在目录中查找文件</strong><br>
* <ul>
* <li>若存在文件则返回文件路径,若不存在则返回空</li>
* <li>若存在参数非法,则返回null</li>
* </ul>
* <br>
* @author Aaron.ffp
* @version V1.0.0: autotest-base cn.ffp.autotest.base.util FileUtils.java search, 2016-03-24 23:17:52.897 Exp $
*
* @param dir 目录
* @param fName 文件名
* @param rec 是否级联目录查找
*
* @return 文件路径
*/
public static String search(String dir, String fName, boolean rec) {
String fp = ""; if (StringUtils.isBlank(dir) || StringUtils.isBlank(fName)) {
msg = "参数非法:目录【" + dir + "】或文件名【" + fName + "】不可为空、null、Tab、回车等,请确认!";
logger.error(msg); return null;
} LinkedList<String> fList = FileUtils.getfList(dir, rec); if (fList.isEmpty()) {
return "";
} for (int i = 0; i < fList.size(); i++) {
if (fList.get(i).endsWith(fName)) {
fp = fList.get(i); return fp;
}
} return fp;
}
获取文件在目录中的路径单元测试源码如下所示:
@Test(description="public static String FileUtils.search(String dir, String fName, boolean rec) ---> 通过性:级联查找\n", dependsOnGroups="getfList")
public void test_search_rec() {
String dir = ConstantInfo.PROJECT_RESOURCES_TEST;
String fName = "readCsv.csv";
String path = ConstantInfo.PROJECT_RESOURCES_TEST + "APICsvTest" + ConstantInfo.OS_FILE_SEPARATOR + "readCsv.csv"; fileList.clear(); Assert.assertEquals(FileUtils.search(dir, fName, true), path);
} @Test(description="public static String FileUtils.search(String dir, String fName, boolean rec) ---> 破坏性:参数非法\n", dependsOnGroups="getfList")
public void test_search_argInvalid() {
String dir = ConstantInfo.PROJECT_RESOURCES_TEST;
String fName = ""; fileList.clear(); Assert.assertTrue(FileUtils.search(dir, fName, false) == null);
} @Test(description="public static String FileUtils.search(String dir, String fName, boolean rec) ---> 通过性:非级联查找\n", dependsOnGroups="getfList")
public void test_search_notRec() {
String dir = ConstantInfo.PROJECT_RESOURCES_TEST;
String fName = "readCsv.csv"; fileList.clear(); Assert.assertEquals(FileUtils.search(dir, fName, false), "");
}
获取文件在目录中的路径单元测试源码
至此, Java学习-043-获取文件在目录中的路径 顺利完结,希望此文能够给初学 JavaWeb 的您一份参考。
最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^
Java学习-043-获取文件在目录中的路径的更多相关文章
- 【原创】ABAP根据文件路径获取文件所在目录(续)
在上一篇文章<ABAP根据文件路径获取文件所在目录>中,我主要的思路是采用 “SPLIT dobj AT sep INTO TABLE result_tab” 句型将文件全路径按分隔符“\ ...
- iOS 获取文件的目录路径的几种方法 [转]
iOS 获取文件的目录路径的几种方法 2 years ago davidzhang iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. d ...
- Java学习-021-Properties 获取配置项对应的值
在日常的脚本编写过程中,通常会获取配置文件中的配置项,以执行相应的业务逻辑. 小二上码...若有不足之处,敬请大神指正,不胜感激! 获取配置项值的源码如下所示: /** * Get value fro ...
- Java学习-014-文本文件写入实例源代码(两种写入方式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: /** * @fun ...
- Java学习-013-文本文件读取实例源代码(两种数据返回格式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 1.读取的文本文件内容以一维数组[LinkedList<String>]的形式返回,源代 ...
- Java学习-011-创建文件实例及源代码
此文源码主要为应用 Java 创建文件的源代码.若有不足之处,敬请大神指正,不胜感激! 创建文件的源代码如下所示: /** * @function 文件操作:创建文件.若文件不存在,则直接创建文件:若 ...
- Java学习-010-创建文件夹源代码
此文源码主要为应用 Java 创建文件目录的源码.若有不足之处,敬请大神指正,不胜感激! 创建文件夹源代码如下所示: /** * @function 文件操作:创建文件夹.若文件夹不存在,则级联创建文 ...
- 【原创】ABAP根据文件路径获取文件所在目录
*&---------------------------------------------------------------------* *& Form frm_get_pat ...
- Python开发【笔记】:从海量文件的目录中获取文件名--方法性能对比
Python获取文件名的方法性能对比 前言:平常在python中从文件夹中获取文件名的简单方法 os.system('ll /data/') 但是当文件夹中含有巨量文件时,这种方式完全是行不通 ...
随机推荐
- JS 特殊字符的魅力
特殊字符的魅力 说在前面—鸭子类型 鸭子类型是动态类型的一种风格,在这种风格中,一个对象有效的语义,不是由继承自特定的类或者实现特定的接口,而是由当前方法和属性的集合决定. “当看到一只鸟走起来像鸭子 ...
- 2分钟 windows下sublime text 3安装git插件:
12:35 2015/11/182分钟 windows下sublime text 3安装git插件:推荐博客:http://blog.csdn.net/naola2001/article/detail ...
- 【BZOJ2223/3524】[Coci 2009]PATULJCI
Description Input Output 10 3 1 2 1 2 1 2 3 2 3 3 8 1 2 1 3 1 4 1 5 2 5 2 6 6 9 7 10 Sample Input ...
- 既然nodejs是单线程的,那么它怎么处理多请求高并发的?
单线程解决高并发的思路就是采用非阻塞,异步编程的思想.简单概括就是当遇到非常耗时的IO操作时,采用非阻塞的方式,继续执行后面的代码,并且进入事件循环,当IO操作完成时,程序会被通知IO操作已经完成.主 ...
- 兼容所有浏览器的设为首页收藏本站js代码
大家发现传统的收藏本站按钮在360浏览器下面没有效果了,但是360浏览器用户群却非常之大.所以我们在网上找到一个兼容所有浏览器的收藏本站解决方案,具体功能如下: 设为首页 和 收藏本站js代码 兼容I ...
- 1047. Student List for Course (25)
Zhejiang University has 40000 students and provides 2500 courses. Now given the registered course li ...
- android中的ActionBar和ToolBar
一.ToolBar 1.概述 Google在2015的IO大会上发布了系列的Material Design风格的控件.其中ToolBar是替代ActionBar的控件.由于ActionBar在各个安卓 ...
- HTML 5 服务器发送事件
接收 Server-Sent 事件通知 EventSource 对象用于接收服务器发送事件通知: 实例 var source=new EventSource("demo_sse.php&qu ...
- MyEclipse自定义快捷键
MyEclipse快捷键设置 分类: JAVA2011-06-30 09:35 11255人阅读 评论(2) 收藏 举报 myeclipseeclipsetriggersmicrosoftjavabi ...
- php课程---练习(联系人信息表)
做一个联系人表,实现增删改功能 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...