2015-08-21 20 views
0

嗨,我正在開發一個應用程序接收短信,我有經驗使用AT命令通過發送短信。我如何獲取發件人#,消息和文本的日期時間。如何獲取數字,消息和日期時間並顯示到網格

port.Write("AT+CNMI=2,1,0,0,1") 
     Thread.Sleep(1000) 
     port.Write("AT+CMGF=1") 
     Thread.Sleep(1000) 
     port.Write("AT+CMGL=" & "ALL") 
     Thread.Sleep(1000) 
     receivedData = port.ReadExisting 

我想顯示所有消息在我的datagrid就像下面的圖片,但我不知道該怎麼做。

dgv.Rows.Add(New String() {"", "", ""}) 

​​

+0

要分割的數據格式是什麼? – Blackwood

+0

我想看看我的GSM調制解調器裏面的消息,並把它放到我的DataGridView – Denver

+0

你想拆分的「你的GSM調制解調器裏面的消息」的格式是什麼?發佈一些例子或解釋格式。 – Blackwood

回答

1

假設receivedData包含這樣

GLOBE一個字符串您的餘額是什麼2015年8月21日上午07時20分35秒

和名稱/編號不能包含空格,您可以分開這三個部分

Dim startMessage As Integer = receivedData.IndexOf(" ") 
Dim endMessage As Integer = receivedData.Substring(0, receivedData.Length - 17).LastIndexOf(" ") 
Dim id, message, timestamp As String 
If startMessage >=0 AndAlso endMessage > startMessage Then 
    id = receivedData.Substring(0, startMessage) 
    message = receivedData.Substring(startMessage + 1, endMessage - startMessage - 1).Trim 
    timestamp = receivedData.Substring(endMessage + 1) 
    dgv.Rows.Add({id, message, timestamp}) 
End If 
+0

裏面添加了一張圖片,我改變了我的問題的標題。也感謝你這個奇妙的想法。 – Denver

+0

@Bombards我編輯了我的答案,以說明如何將值添加到「DataGridView」。 – Blackwood

+0

+1是的,這是有益的,工作正常。但我怎麼能讀的消息3我認爲port.readexisting是錯誤的,它只回復rss ^類似的東西。 – Denver

相關問題