2016-07-22 67 views
0

我正在使用visual basic 2010.我有以下格式的数据字符串。我想分割逗号分开的值并将其放入单独的文本框中。For The last Temp_read:348 ,HV_Read:647,SPD:0,DIS:0”我想单独拆分值并付诸文本框中分割字符串并将值放入文本框

可以有人建议我,我怎么能做到这一点是有示例代码

Public Class Form1 

    Dim selectedItem1 As String 
    Dim Data As String 
    Private Sub SMCB1_clientIP_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SMCB1_clientIP.TextChanged 

    End Sub 


    Private Sub SMCB1_Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SMCB1_Connect.Click 

     Dispay_Show.Text = SMCB1_clientIP.Text 
     Dispay_Show.Text = SMCB1_clientIP.Text & vbNewLine & SMCB1_Port.Text & vbNewLine 
     Data = "SMCB3,3,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Temp_read:348,HV_Read:647,SPD:0,DIS:0" 
     Dispay_Show.Text = SMCB1_clientIP.Text & vbNewLine & SMCB1_Port.Text & vbNewLine & Data 
     Data.Split() 





    End Sub 


    Private Sub SMCB1_Disconnect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SMCB1_Disconnect.Click 

    End Sub 




End Class 

Image

Data =“SMCB3,3,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0 ,0,0,0,0,Temp_read:348,HV_Read:647,SPD:0,DIS:0“

+0

你能指定你正在寻找你添加的图像的预期输出吗? – Siva

回答

0

我写了下面的代码。有28个文本框。值应该被记录到每个文本框中。用下面的代码我可以记录多达28个值。 但是从24放慢参数包含 Temp_read:348,HV_Read:647,SPD:0,DIS:0" 需要单独的字符串 “:”,并把阅读特定文本框

Option Explicit On 

Public Class Form1 

    Dim selectedItem1 As String 
    Dim Data As String 
    Dim WrdArray() As String 
    Dim line As String 

    Private Sub SMCB1_clientIP_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SMCB1_clientIP.TextChanged 

    End Sub 


    Private Sub SMCB1_Connect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SMCB1_Connect.Click 

     ' Dispay_Show.Text = SMCB1_clientIP.Text 
     'Dispay_Show.Text = SMCB1_clientIP.Text & vbNewLine & SMCB1_Port.Text & vbNewLine 
     Data = "SMCB3,3,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Temp_read:348,HV_Read:647,SPD:0,DIS:0" 
     ' Dispay_Show.Text = SMCB1_clientIP.Text & vbNewLine & SMCB1_Port.Text & vbNewLine & Data 
     Dispay_Show.Text = Data 

     Dim strArray() As String 
     Dim intCount As Integer 
     Dim Tempr_read As String 
     Dim voltage As String 
     Dim SPD As String 
     Dim Dis_value As String 

     Data = "SMCB3,3,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Temp_read:348,HV_Read:647,SPD:0,DIS:0" 
     strArray = Split(Data, ",") 
     SMCB1_Name.Text = strArray(0) 
     SMCB1_DeviceId.Text = strArray(1) 
     SMCB1_String1.Text = strArray(2) 
     SMCB1_String2.Text = strArray(3) 
     SMCB1_String3.Text = strArray(4) 
     SMCB1_String4.Text = strArray(5) 
     SMCB1_String5.Text = strArray(6) 
     SMCB1_String6.Text = strArray(7) 
     SMCB1_String7.Text = strArray(8) 
     SMCB1_String8.Text = strArray(9) 
     SMCB1_String9.Text = strArray(10) 

     SMCB1_String10.Text = strArray(11) 
     SMCB1_String11.Text = strArray(12) 
     SMCB1_String12.Text = strArray(13) 
     SMCB1_String13.Text = strArray(14) 
     SMCB1_String14.Text = strArray(15) 
     SMCB1_String15.Text = strArray(16) 
     SMCB1_String16.Text = strArray(17) 
     SMCB1_String17.Text = strArray(18) 
     SMCB1_String18.Text = strArray(19) 
     SMCB1_String19.Text = strArray(20) 

     SMCB1_String20.Text = strArray(21) 
     SMCB1_String21.Text = strArray(22) 
     SMCB1_String22.Text = strArray(23) 
     SMCB1_String23.Text = strArray(24) 
     SMCB1_String24.Text = strArray(25) 

     ' Tempr_read = Split(Data(strArray(26),":") 


     SMCB1_Temp.Text = strArray(26) 
     SMCB1_Hvread.Text = strArray(27) 
     SMCB1_SPD.Text = strArray(28) 
     SMCB1_DIS.Text = strArray(29) 


     For intCount = LBound(strArray) To UBound(strArray) 
      Debug.Print(Trim(strArray(intCount))) 
     Next 
    End Sub 



    Private Sub SMCB1_Disconnect_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SMCB1_Disconnect.Click 

    End Sub 

End Class 
0

我建议使用InStrRev函数的两个实例 - 一个用于冒号,另一个用逗号,同时向后循环穿过字符串并构建阵列。

通过这种方式,您将能够捕获右侧的数据冒号(在逗号之前),但忽略了逗号和冒号之间的标签(如果这实际上是你打算做的)。

请打我,如果你想一个工作的例子。

Regards

+0

笔画。有没有任何示例代码 – Ajit