在 UFT 中拆分单元格

Split a cell in UFT

我有一个文本文档 (.txt),其中有 n 行需要拆分,但关键是我没有分隔符。我知道每个不变的变量的长度。

比如第一个变量是从第25个字符到第35个;第二个,从 36 到 47;然后从 48 到 78,然后从 79 到 119,一直到该行的第 360 个字符。

我想解决方案是通过双循环,每行一个,每个变量一个,但我无法做到。

如果您需要更多信息,请询问,我完全迷路了。

谢天谢地,

您需要采取的步骤:

  1. 打开文件
  2. 读一行
  3. 确认该行是 360 个字符
  4. 将行的块分配给不同的变量
  5. 用变量做事
  6. 读取另一行并重复直到 EOF

1 & 2: 您的工作簿需要引用 Microsoft Scripting Runtime 才能让您访问 FileSystemObject。我会让你研究一下。

创建一个 FileSystemObject 并使用它来创建一个带有文件路径的 TextStream。

currentLine = textStream.ReadLine()
Do Until textStream.EOF
    If Len(currentLine) = 360 Then
        firstChunk = Mid$(currentLine, 25, 10)
        secondChunk = Mid$(currentLine, 36, 11)
        thirdChunk = Mid$(currentLine, 48, 30)
        fourthChunk = Mid$(currentLine, 78, 30)

        ' Do stuff with chunks
    End If
    currentLine = textStream.ReadLine()
Loop

在适当的时候,您可能会喜欢并拥有一个数组,其中填充了成对的项目,详细说明了块的起点以及它有多少个字符,例如:

Dim arrChunkPoints As Variant
Dim arrChunks As Variant
arrChunkPoints = Array(25,10, _
                       36,11, _
                       48,30, _
                       78,30)
ReDim arrChunks(UBound(arrChunkPoints))   ' Integer returned

这将允许您跨过 arrChunkPoints 中的项目,并使用 Mid$() 用 currentLine 的一部分填充 arrChunks 的每个元素,但填充的是来自 arrChunkPoints 的值。但这可能是另一天。