3

有人可以帮助我使用 Watir 在 Ruby 中编写代码,以便我可以根据位置从给定文本文件中读取任何值,并将其用作 Web 应用程序中任何字段的参数。

我是 Ruby 新手,不知道如何实现这个解决方案。

例如,我需要的是,假设 d 驱动器主文件夹中有一个名为“Test.txt”的文本文件。说它有这样的文字

13085216660000019999

在上面的文本中,我想读取从位置 4 到 8 的值,即 '8521' 并将其存储为变量并在文本字段中使用它,如下所示

ie.textField(:name, "de2").set '变量来自读取文件'

4

1 回答 1

2

像这样的东西?[3..6] 表示第 4 位(从 0 开始)直到第 8 位

def my_method var
  puts var
end

File.read("read_var_from_file.txt").each_line{ |line|my_method line[3..6] }

当文件内容为

13085216660000019999
13085226660000019999
13085236660000019999

给出作为输出

8521
8522
8523

编辑:基于此处的评论,另一个版本可让您逐行更改开始和结束位置

def read_var file, line_nr, vbegin, vend
    IO.readlines(file)[line_nr][vbegin..vend]
end

puts read_var("read_var_from_file.txt", 0, 1, 3) #line 0, beginning at 1, ending at 3
#=>308

puts read_var("read_var_from_file.txt", 1, 3, 6)

#=>8522
于 2012-09-05T08:31:49.877 回答