0

私はコンソールアプリを書くのが初めてです。コンソールを実行して受け取ったメッセージを書き込むときに、コンソールに余分な行がたくさん作成される理由がわかりません。これはばかげていると確信していますが、グーグルの誰も明らかにvb.netでこのばかではないので、私は最後の手段です。前もって感謝します!

Sub Main()
    Do
        Console.WriteLine("Waiting for connection...")
        server.Start()
        client = server.AcceptTcpClient()
        Console.WriteLine("Connected")
        Do
            stream = client.GetStream()
            Dim recvBytes(client.ReceiveBufferSize) As Byte
            stream.Read(recvBytes, 0, client.ReceiveBufferSize)
            Dim recvText As String = Encoding.ASCII.GetString(recvBytes)
            Console.WriteLine(recvText)
            responses = Console.ReadLine
            If responses = "close" Then
                stream.Close()
                client.Close()
                server.Stop()
                Environment.Exit(0)
            Else
                Dim sendBytes() As Byte = Encoding.ASCII.GetBytes(responses)
                stream.Write(sendBytes, 0, sendBytes.Length)
                Console.WriteLine("Message Sent")
            End If
            If client.Connected = False Then
                Console.WriteLine("Client is no longer connected")
                Exit Do
            End If
        Loop
    Loop
End Sub
4

2 に答える 2

0

私が抱えていた問題は、受信バッファのサイズに関連していました。実際に設定したら、文字列ビルダーを使用して最終的な文字列を作成しました。すべてがうまくいきました。すべての提案をありがとう。これらの提案は、私が考慮していなかったいくつかのことについて、非常に興味深く、非常に必要とされていた読み物につながりました。

于 2013-04-27T16:52:40.167 に答える