zoukankan      html  css  js  c++  java
  • Socket.Receive 接收数据不完整

    在写个小软件,通过Socket 读取Html,可是总是不完整,老外这边有个例子。可以参考。

    http://stackoverflow.com/questions/4045438/net-socket-receive-not-receiving-large-data-streams-from-java-socketserver

    byte[] receivedData = new byte[512000]; // 4 Meg Buffer
    
        Socket mySocket = new Socket(AddressFamily.InterNetwork, 
                                   SocketType.Stream, ProtocolType.Tcp);
        mySocket.Connect("172.26.190.205", 4444);
        mySocket.ReceiveBufferSize = 8192;
    
        int numberOfBytesRead = 0;
        int totalNumberOfBytes = 0;
        do
        {
            numberOfBytesRead = mySocket.Receive(receivedData,totalNumberOfBytes ,
                                mySocket.ReceiveBufferSize,SocketFlags.None);
            totalNumberOfBytes += numberOfBytesRead;
        } 
        while (numberOfBytesRead > 0);
        mySocket.Close();
    
        byte[] formatedBytes = new byte[totalNumberOfBytes ];
        for (int i = 0; i < totalNumberOfBytes ; i++)
        {
            formatedBytes[i] = receivedData[i];
        }
        Response.ClearContent();
        Response.ContentType = "text/plain";
        Response.Write(new System.Text.ASCIIEncoding().GetString(formatedBytes));
    
  • 相关阅读:
    百度之星初赛 A
    百度之星 初赛 BC
    2016 百度之星资格赛
    codeforces 749
    codeforces 785
    HDU 4617
    网络流 poj 2195
    网络流 poj 3436 poj 3281
    codeforces 780 C
    idea激活
  • 原文地址:https://www.cnblogs.com/dooom/p/3045421.html
Copyright © 2011-2022 走看看