上記のコードを仕様してニコニコ生放送のコメントを受信したところを途中で文字化けがおきてしまいます。 おそらく For Each receiveData As String In elements
'帰ってきたXMLに"<chat"から"</chat>"まで全部あったらで分ける '文字が多いいと、分割して帰ってくるから、 If receiveData.StartsWith("<chat") AndAlso receiveData.EndsWith("</chat>") Then OnReceiveChat(receiveData) Else 'チャットが分割で来たときの処理。 If receiveData.StartsWith("<thread resultcode=") = False Then If receiveData.StartsWith("<view_counter") = True Then 'ここは、ニコニコ実況ようだから、スルーでおk ElseIf receiveData.Contains("</chat>") = False Then more = receiveData End If End If
End If
Next
For Each receiveData As String In elements
'帰ってきたXMLに"<chat"から"</chat>"まで全部あったらで分ける '文字が多いいと、分割して帰ってくるから、 If receiveData.StartsWith("<chat") AndAlso receiveData.EndsWith("</chat>") Then OnReceiveChat(receiveData) Else 'チャットが分割で来たときの処理。 If receiveData.StartsWith("<thread resultcode=") = False Then If receiveData.StartsWith("<view_counter") = True Then 'ここは、ニコニコ実況ようだから、スルーでおk ElseIf receiveData.Contains("</chat>") = False Then more = receiveData End If End If
End If
Next
more = receiveDataで次回に持ち越してるのがいけないとおもうんですが。 byteにして 最初のバイトとして足してもうまくいかないのですが どのようにしたらいいでしょうか?
分類:[.NET]
http://sekki.net/wordpress/?p=25
上記のコードを仕様してニコニコ生放送のコメントを受信したところを途中で文字化けがおきてしまいます。 おそらく
For Each receiveData As String In elements
'帰ってきたXMLに"<chat"から"</chat>"まで全部あったらで分ける
'文字が多いいと、分割して帰ってくるから、
If receiveData.StartsWith("<chat") AndAlso receiveData.EndsWith("</chat>") Then
OnReceiveChat(receiveData)
Else
'チャットが分割で来たときの処理。
If receiveData.StartsWith("<thread resultcode=") = False Then
If receiveData.StartsWith("<view_counter") = True Then
'ここは、ニコニコ実況ようだから、スルーでおk
ElseIf receiveData.Contains("</chat>") = False Then
more = receiveData
End If
End If
End If
Next
For Each receiveData As String In elements
'帰ってきたXMLに"<chat"から"</chat>"まで全部あったらで分ける
'文字が多いいと、分割して帰ってくるから、
If receiveData.StartsWith("<chat") AndAlso receiveData.EndsWith("</chat>") Then
OnReceiveChat(receiveData)
Else
'チャットが分割で来たときの処理。
If receiveData.StartsWith("<thread resultcode=") = False Then
If receiveData.StartsWith("<view_counter") = True Then
'ここは、ニコニコ実況ようだから、スルーでおk
ElseIf receiveData.Contains("</chat>") = False Then
more = receiveData
End If
End If
End If
Next
more = receiveDataで次回に持ち越してるのがいけないとおもうんですが。 byteにして 最初のバイトとして足してもうまくいかないのですが
どのようにしたらいいでしょうか?