一、实战场景

用户指定一个文件夹,现在需要将文件夹中是 Excel 的文件名统一添加上年月日。

ios UIDocumentPickerViewController获取文件类型_字符串

二、流程说明

2.1. 添加文件夹选择弹窗

首先我们添加文件夹选择弹窗,活动中搜索“浏览文件夹”,这个可以让用户只有选择文件夹。该控件可以返回用户选择的文件夹路径。我们用 v_folder (String 类型)变量来接收返回值。

ios UIDocumentPickerViewController获取文件类型_字符串_02

因为这个路径是通过弹窗选择出来的文件路径。可以规避文件夹不存在或者错误的问题。所以这里我们可以无需判断返回文件夹是否存在。

2.2. 获取文件夹下的文件

下面我们需要遍历一下这个文件夹下所有的文件。可以使用如下函数获取。

'读取文件夹中后缀为“.xlsx”的文件
Directory.GetFiles(v_folder,"*.xlsx")

ios UIDocumentPickerViewController获取文件类型_uipath_03

通过上面的函数可以获取文件夹下的列表,第二个参数可以对文件进行筛选,且第二个参数是非必填项。返回一个文件列表我们用 v_file_list (String[]类型)接收。

2.3. 遍历打印文件名

遍历文件列表,我们可以使用“遍历循环”。将数组中的每个元素赋值给 item。并通过的日志遍历打印出来。

ios UIDocumentPickerViewController获取文件类型_字符串_04

其中 TypeArgument 的类型选择 String 类型。

ios UIDocumentPickerViewController获取文件类型_文件名_05

2.4. 修改文件名

读取到了文件夹,且获取到每一个文件的名称,下面我们对文件名进行修改。可以使用Replace 方法对字符串进行替换,我们将修改后的文件名存放到变量 v_new_file (String 类型)中。

item.Replace(".xlsx",now.ToString("yyyy-MM-dd")+".xlsx")

ios UIDocumentPickerViewController获取文件类型_执行流程_06

修改文件名,我们可以用移动文件,如果移动文件夹前后都是在同一个文件夹下的话,则为修改文件夹。

“移动文件” 活动需要填写源文件和目标文件。

ios UIDocumentPickerViewController获取文件类型_自动化_07

三、执行流程

流程已经编写完成,现在我们执行流程。

3.1. 选择文件夹

执行开始会有弹窗,要求选择文件夹。此时选择执行文件夹。

ios UIDocumentPickerViewController获取文件类型_自动化_08

选择完成后,我们可以看到文件夹中的 Excel 文件添加上了日期。且 text 文件没有被修改。

ios UIDocumentPickerViewController获取文件类型_执行流程_09

查看日志平台。可以打印出文件夹名称

ios UIDocumentPickerViewController获取文件类型_执行流程_10