Get Adobe Flash player

    postheadericon Download file in a mobile C# application

    I didn't find a tutorial on how to download something on a mobile device in c#, most of the tutorials work with the WebClient class, but that's not in the compact framework mobile apps use. So I found this nice VB.net app that came close to what I needed and I took several other parts of code and fused this little example.

    ""

    //initiate the buffer size (I just took this value from a tutorial and it was large enough for my need
    int BufferSize = 32768;

    //create a HTTP request of your file and capture the response

               HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.example.be/mobileapp.cab");
               HttpWebResponse response = (HttpWebResponse)request.GetResponse();
               Stream readStream = response.GetResponseStream();

    //create a buffer

               byte[] ByteBucket = new byte[BufferSize + 1];

    //create a filestream to write the local file
              FileStream fileToWrite = new FileStream("mymobileapp.cab", FileMode.Create, FileAccess.Write);
    //create a loop to read the downstream in parts and write each part to the wanted file
               bool done = false;
               int currentBytesRead = 0;
               int totalBytesRead = 0;
               while (done == false)
                {
                    currentBytesRead = readStream.Read(ByteBucket, 0, BufferSize);
                    fileToWrite.Write(ByteBucket, 0, currentBytesRead);
                    totalBytesRead += currentBytesRead;
                    if (totalBytesRead == response.ContentLength) {
                        done = true;
                    }
                }
                fileToWrite.Close();

    ""

    This was succesfully tested on a Windows CE 5 device.

     


    Last Updated (Thursday, 09 April 2009 15:14)

     

    Add your comment

    Your name:
    Your email:
    Your website:
    Subject:
    Comment: