2013-07-13 6 views
0

Я столкнулся с проблемой в своем приложении для Android, где я получаю весь контент на странице, но я хочу только его часть. Вот часть моего кода:Не удается получить конкретные данные из интернета

spinner.setOnItemSelectedListener(new OnItemSelectedListener() { 
    @Override 
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) { 
     String text1 = spinner.getSelectedItem().toString().trim(); 

     if (text1.equals("US Dollar - USD")) {   
      try { 

       Document doc = Jsoup.connect("http://www.google.com/finance/market_news?ei=_FLfUbD4JrG90QGf6wE").get(); 
       String body = doc.body().text(); 
       textView1.setText(body); 

      } catch (IOException e) { 


     } 

Вот что я получаю в моем приложении:

http://oi41.tinypic.com/343kmwx.jpg

материал, который я хочу в моем приложении начинается с «An Ethiopian Airlines .... .... на 767 Dreamliner огня.

что мне нужно сделать? Я не опытный в CSS, Javascript или HTML. Я проверил все более Google тоже. Любая помощь будет принята с благодарностью.

ответ

0

Это рабочий код. Это будет работать в этом конкретном случае. Однако вы можете добавить конечную точку или настроить свою начальную точку, чтобы она работала с общим случаем.

String [] words = body.split(" "); 
int startPlace = 0; 
for(int i = 0; i< words.length; i++){ 
    if(words[i].equals("Ethiopian")){ 
     startPlace = i-1; //Because of the "An" word before 
    } 
} 
String displayText = ""; // so += will work 
for(int i = startPlace; i<words.length; i++){ 
    displayText += words[i]+" "; 
} 
//Set the text to your textview. 
TextView contentTextView = (TextView) findViewById(R.id.contentTextView); 
contentTextView.setText(displayText); 
+0

что я в словах. Длина() означает? – user2507301

+0

это означает, что вы инициализируете цикл for с помощью int i = 0, и вы будете продолжать увеличивать i до тех пор, пока i меньше размера массива слов. Просто убедитесь, что вы пройдете все слова в массиве. После того, как вы нашли исходную позицию, в этом случае, когда вы найдете суп-эфиопца. Вы создадите еще один цикл, который вы инициализируете в этой стартовой позиции, и вы продолжите движение до тех пор, пока не достигнете конца массива слов. Это гарантирует, что вы добавили все слова, которые пришли после вашей исходной позиции в displayText. Вы также можете добавить конечную точку, если u like –

+0

Нет, я спрашиваю, что означает «i in words.Length()». Вам также не хватает WAY для значительной пунктуации кода. Пожалуйста, пересмотрите свой ответ. – user2507301