2016-04-08 22 views
0

Android yazıyorum. Uygulama, web'deki bir dosyanın satırını okumalı ve mesajı textView'de göstermelidir. BufferedReader kullanıyorum. While döngüsünde bufferedReader.readLine() kullandığımda iyi çalışıyor. Ancak bir IF deyiminde (hata ayıklama modunda gördüğüm bir şey olmasına rağmen hiçbir şey göstermediğimde) çalışmaz.bufferedReader.readLine, Android içinde IF içinde çalışmaz

@Override 
    protected String doInBackground(String... params) { 

     HttpURLConnection urlConnection = null; 
     String result = ""; 

     try { 
      URL url = new URL("http://www.tc.umn.edu/~yang4131/jtest.json"); 
      urlConnection = (HttpURLConnection) url.openConnection(); 

      int code = urlConnection.getResponseCode(); 
      if(code==HttpURLConnection.HTTP_OK){ // 200 

       InputStream in = new BufferedInputStream(urlConnection.getInputStream()); 

       if (in != null) { 

        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in)); 
        String line = ""; 


        /* 
        if((line = bufferedReader.readLine()) != null) 
         result += line; 
        if((line = bufferedReader.readLine()) != null) 
         result += line; 
        if((line = bufferedReader.readLine()) != null) 
         result += line; 
        */ 

        while ((line = bufferedReader.readLine()) != null) 
         result += line; 

       } 
       in.close(); 
      } 
      return result; 
     } catch (MalformedURLException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
     finally { 
      urlConnection.disconnect(); 
     } 
     return result; // this return statement is needed, no matter what 
    } 

Bu dosyayı yerel bir dosyayla Eclipse'de saf Java'da çoğaltdım. İyi çalışıyor. Gerçekten hiçbir fikrim yok.

+0

Neden bunu bir if deyiminde yapmak istersiniz? Sadece boş bir satır okumayıp anlamadığından emin misin? – Natecat

+0

@Natecat Eminim ilk üç satırın hiçbiri boş değil. Bunun çok anlamlı olmadığını biliyorum, ama bana çok tuhaf geliyor. – user3207158

+0

İnanması zor. Aslında imkansız. NB 'in', test ettiğiniz noktada boş olamaz. Anlamsız testler yazmayın. – EJP

cevap

0

Çözüldü. Birleştirme işleminden sonra result += "\n\n\n\n"; eklendiğinde içerik görünecektir. Bunun UI ile bir ilgisi olduğunu düşünüyorum, belki de benim textView az satır veya node için engellenir.