merhaba, aşağıdaki fonksiyonla dosya upload ediyorum ama aktarılan veriyi göremediğim için upload durumunu gösteren progressbar yapamadım. aktarılan veriyi nasıl görebilirim. teşekkür ederim.


    public void post(String url, File sendFile) 
          throws UnsupportedEncodingException, IOException {
        long start = System.nanoTime();    
        HttpParams params = new BasicHttpParams();
        params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, true);
        HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
        HttpClient client = new DefaultHttpClient(params);
        HttpPost post = new HttpPost(url);
        MultipartEntity multiEntity = new MultipartEntity(); 
        multiEntity.addPart("userfile", new FileBody(sendFile));
        post.setEntity(multiEntity);  
        HttpResponse response = client.execute(post);
        if (response != null) {
          HttpEntity resEntity = response.getEntity();
          System.out.println(response.getStatusLine());
        }
        if (resEntity != null) {
          System.out.println(EntityUtils.toString(resEntity));
        }
        if (resEntity != null) {
          resEntity.consumeContent();
        } 
      }

soruldu: 03 Mar '14, 13:37

sonik509's gravatar image

sonik509
7181016
cevap kabul oranı: 100%

değiştirildi: 06 Mar '14, 09:49

CemIkta's gravatar image

CemIkta ♦
19.9k29125190

@sonik509 Lütfen sorunuza detayli etiketler ekleyin, böylece daha aciklayici ve anlasilir olur, hizli cevaplar alirsiniz. Örnegin JSP, JSF, Servlet ve benzeri gibi.

(04 Mar '14, 16:38) CemIkta ♦ CemIkta's gravatar image

oldu sonunda. bu şekilde anlık aktarılan veri miktarını yazdırıyorum. başka arkadaşların ihtiyacı olabilir.

main.java

    public void post(String url, File sendFile) throws UnsupportedEncodingException, IOException {
    long start = System.nanoTime();    
    HttpParams params = new BasicHttpParams();
    params.setParameter(HttpProtocolParams.USE_EXPECT_CONTINUE, true);
    HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
    HttpClient client = new DefaultHttpClient(params);
    HttpPost post = new HttpPost(url);
   MultipartEntity reqEntity = new MultipartEntity(){
    ProgressListener listener;           
                public void writeTo(final OutputStream outstream) throws IOException {
                    super.writeTo(new UploadStream(outstream,listener));                                 
                }
            };
    reqEntity.addPart("userfile", new FileBody(sendFile));
    post.setEntity(reqEntity);
    HttpResponse response = client.execute(post);
    if (response != null) {
    HttpEntity resEntity = response.getEntity();
    System.out.println(response.getStatusLine());
    if (resEntity != null) {
    System.out.println(EntityUtils.toString(resEntity));
    }
    if (resEntity != null) {
      resEntity.consumeContent();
    }
    }  
}

UploadStream.java

public class UploadStream extends FilterOutputStream {

final ProgressListener listener;
private long transferred;

public UploadStream(final OutputStream out, final ProgressListener listener)
{
    super(out);
    this.listener = listener;
    this.transferred = 0;
}

public void write(byte[] b, int off, int len) throws IOException
{
    out.write(b, off, len);
    this.transferred += len;
    System.out.println(this.transferred/1024+" KB");
}

public void write(int b) throws IOException
{
    out.write(b);
    this.transferred++;
}

}
permanent link

cevaplandı: 05 Mar '14, 09:49

sonik509's gravatar image

sonik509
7181016
cevap kabul oranı: 100%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×1,079
×281
×111
×10
×2

Soruldu: 03 Mar '14, 13:37

Görüntüleme: 760 kez

Son güncelleme: 06 Mar '14, 09:49

powered by BitNami OSQA