怎么用VB提取每行J1=后的数字到MSHFlexGrid1中 CIP Z=-1.923 Y=5.495 K1=-1.973 J1=5.59 CIP Z=-1.799 Y=5.253 K1=-1.86 J1=5.374
时间: 2024-06-17 18:06:41 浏览: 101
您可以使用VB中的字符串处理函数来提取每行J1=后的数字,并将其添加到MSHFlexGrid1中。具体的代码如下所示:
```
Dim s As String
Dim j1 As String
Dim rowIndex As Integer
' 遍历每行文本
For Each line In TextBox1.Lines
' 查找J1=所在位置
s = Mid(line, InStr(line, "J1=") + 3)
' 提取J1后的数字
j1 = Val(s)
' 将J1添加到MSHFlexGrid1中
With MSHFlexGrid1
.Rows = .Rows + 1
rowIndex = .Rows - 1
.TextMatrix(rowIndex, 0) = j1
End With
Next
```
如果您的文本框中有多行数据,上述代码可以逐行遍历并提取J1后的数字,然后将其添加到MSHFlexGrid1中。另外,上述代码中使用了Mid函数和InStr函数来截取字符串,以及Val函数将字符串转换成数字。
相关问题
怎么用VB提取每行J1=后的数字到MSHFlexGrid1中 CIP Z=-1.923 Y=5.495 K1=-1.973 J1=5.59 CIP Z=-1.799 Y=5.253 K1=-1.86 J1=5.374
可以使用VB中的Split函数和Mid函数来提取每行J1=后的数字到MSHFlexGrid1中,具体操作如下:
1. 首先,将文本文件逐行读取到一个字符串数组中。
2. 对于每行字符串,使用Split函数将其按照空格分隔成一个字符串数组。
3. 遍历该字符串数组,查找包含J1=的字符串,并使用Mid函数截取该字符串后的数字。
4. 将得到的数字添加到MSHFlexGrid1中。
以下是VB代码示例:
```
Dim fileNum As Integer
Dim fileName As String
Dim fileContent() As String
Dim row As Integer
' 打开文件并读取内容到数组
fileName = "file.txt"
fileNum = FreeFile()
Open fileName For Input As fileNum
row = 1
Do While Not EOF(fileNum)
Line Input #fileNum, fileContent(row)
row = row + 1
Loop
Close fileNum
' 遍历数组并提取J1后的数字到MSHFlexGrid1
For i = 1 To UBound(fileContent)
Dim strArr() As String
strArr = Split(fileContent(i), " ")
For j = 0 To UBound(strArr)
If InStr(strArr(j), "J1=") > 0 Then
Dim num As Double
num = CDbl(Mid(strArr(j), 4))
MSHFlexGrid1.TextMatrix(i, 1) = num ' 添加到MSHFlexGrid1中
End If
Next j
Next i
阅读全文