使用Robot从txt文件中读取不同行的内容并显示

该博客介绍如何使用Robot从txt文件中读取不同行的内容,并提供了两个函数:ReturnRowNum获取行数,ReturnCell获取指定行的内容。示例脚本展示了如何在VBA中实现这一功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一篇文章中介绍了如何使用Robot从Excel中读取不同行和列的内容,但其中涉及到很多较复杂的语句,所以对于阅读和理解都不是很方便,这里我实验了一下使用Robot从txt文件中读取不同行的内容并显示(txt里没有列的概念),最后将代码“封装”成两个函数:ReturnRowNum,ReturnCell。一个是返回指定文件的行数,一个是返回指定文件不同行的内容。

脚本:

Declare Function ReturnRowNum(Dircetory as string) as integer
Declare Function ReturnCell(Dircetory as string,RowNum as integer,ReturnRowCell as integer) as string

Sub main                  '主脚本
    Dim x as integer
    Dim Location as string
    Dim msgtext as string
   
    Location = "C:/qingd.txt"    '指定一个文件
   
    x = returnrownum(location)    '调用ReturnRowNum函数,返回这个文件中的行数
   
    msgtext = ReturnCell(location,x,1)    '调用ReturnCell函数,返回指定文件,指定行的内容
    msgbox msg

### 使用 Robot Framework 读取 TXT 文件内容Robot Framework 中,可以通过内置的标准库 `OperatingSystem` 或者通过嵌入 Python 脚本来实现对 TXT 文件读取功能。以下是两种常见的方式: --- #### 方法一:使用 `Get File` 关键字 Robot Framework 的标准库 `OperatingSystem` 提供了一个简单的关键字 `Get File`,可以直接获取整个文件内容。 ##### 示例代码: ```robot *** Settings *** Library OperatingSystem *** Test Cases *** Read Text File Content ${file_content}= Get File path/to/your/file.txt Log File Content: ${file_content} ``` 这段代码会将指定路径下的 `file.txt` 文件内容加载到变量 `${file_content}` 中,打印出来[^1]。 --- #### 方法二:逐行读取文件内容 如果需要逐行处理文件内容,则可以先读取整个文件再按照行分割成列表形式逐一分析。 ##### 示例代码: ```robot *** Settings *** Library OperatingSystem *** Keywords *** Split File Into Lines [Arguments] ${file_path} ${content}= Get File ${file_path} @{lines}= Split To Lines ${content} [Return] ${lines} *** Test Cases *** Process Each Line In A Text File @{all_lines}= Split File Into Lines path/to/your/file.txt FOR ${line} IN @{all_lines} Log Current line: ${line} END ``` 这里定义了一个自定义关键词 `Split File Into Lines` 来返回一个由每一行组成的列表,之后就可以方便地遍历这个列表对其中的数据做进一步的操作了[^2]。 --- #### 方法三:嵌入 Python 实现高级逻辑 对于更加复杂的场景比如过滤掉空白行或是提取特定字段等操作时,也可以考虑直接调用 Python 原生能力来进行更灵活定制化的解决方案。 ##### 示例代码: ```robot *** Settings *** Library BuiltIn *** Keywords *** Filter Non Empty Lines With Python [Arguments] ${file_path} ${filtered_lines}= Evaluate ... with open(${file_path}) as f: ... lines = [l.strip() for l in f if l.strip()] [Return] ${filtered_lines} *** Test Cases *** Use Python Code Inside RF Script ${non_empty_rows}= Filter Non Empty Lines With Python path/to/your/file.txt FOR ${row} IN ${non_empty_rows} Log Processed Row: ${row} END ``` 在这个例子当中,我们利用了 `Evaluate` 执行了一段短小精悍却非常实用的小脚本完成了去除多余空格以及忽略纯空白行的任务[^3]。 --- ### 总结 综上所述,无论是快速简便还是高度可控的需求都可以很好地满足。具体采用哪种方式取决于实际应用场景和个人偏好等因素综合考量决定最佳实践方案即可达成目的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值