Sample code for 30+ languages & platforms
Java

Bandwidth Throttled Asynchronous HTTP Upload

See more Upload Examples

Demonstrates how to do an HTTP upload asynchronously in a background thread with limiting the rate to an approximate number of bytes/second. The only difference between this example and one without bandwidth throttling is that the BandwidthThrottleUp property is set.

Chilkat Java Downloads

Chilkat2 Java
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Upload;

public class ChilkatExample {

    public static void main(String[] args) {
        Upload upload = new Upload();

        // Specify the page (ASP, ASP.NET, Perl, Python, Ruby, CGI, etc)
        // that will process the HTTP Upload.
        upload.setHostname("www.mywebserver.com");
        upload.setPath("/receiveUpload.aspx");

        // Add one or more files to be uploaded.
        upload.addFileReference("file1", "dude.gif");
        upload.addFileReference("file2", "pigs.xml");
        upload.addFileReference("file3", "sample.doc");

        // Set the BandwidthThrottleUp property to throttle to approx 64K/second
        upload.setBandwidthThrottleUp(65536);

        // Begin the HTTP upload in a background thread:
        try {
            upload.beginUpload();
            System.out.println("Upload started...");
        } catch (ChilkatException e) {
            System.out.println(e.getLastErrorText());
        }

        // Wait for the upload to finish.
        // Print the progress as we wait...
        while (upload.getUploadInProgress()) {
            // We can abort the upload at any point by calling:
            // upload.AbortUpload();

            // Display the percentage complete and the number of bytes uploaded so far..
            // The total upload size will become set after the upload begins:
            System.out.println(upload.getPercentUploaded() + "% " + upload.getNumBytesSent() + "/" + upload.getTotalUploadSize());

            // Sleep 2/10ths of a second.
            upload.sleepMs(200);
        }

        // Did the upload succeed?
        if (upload.getUploadSuccess()) {
            System.out.println("Files uploaded!");
        } else {
            System.out.println(upload.getLastErrorText());
        }
    }
}