Stap 6: Het lezen van een Newsfeed
Ik ga niet in detail over rss-feeds, er is een heleboel informatie beschikbaar daar. Simpel gezegd, zullen we readingdata in van een XML-bestand en het ontleden van de tekst voor de tekst die we nodig hebben.
Voeg deze regel toe aan de sectie van de verklaring
//the newsfeed te ladenString url = "http://rss.theweathernetwork.com/weather/caon0696";
U moet veranderen de feed te vertegenwoordigen uw stad. Zoek het netwerk weer voor uw stad en kopieer de stadscode aan het einde van de staaf van het adres zodra u het hebt gevonden.
Voeg nu een indien verklaring onder de anderen in de lus functie definiëren de opdracht woorden die noem de getWeather functie.
als (s.equals ("boom get het weer")) {}getWeather();
}
Voeg ten slotte de volgende functie naar de onderkant van uw schets.
//get het weerongeldig getWeather() {}
String currentWeather;
laden van de feed
XMLElement rss = nieuwe XMLElement(this,url);
XMLElement [] titleXMLElements = rss.getChildren("channel/item/description");
String weer = titleXMLElements[0].getContent();
int index = weather.indexOf(",");
currentWeather = weather.substring(0,index);
index = weather.indexOf ("&");
Tekenreeks temp = weather.substring(index-2,index);
int min = temp.indexOf("-");
currentWeather = "de huidige weersomstandigheden is" + currentWeather + "!, met een temperatuur van" + temp + "graden celcius";
println(currentWeather);
Message = currentWeather;
respond(Message);
}
Deze functie gewoon laadt van de feed en verdeelt de resulterende tekst in de String weer terugkomen alleen het actuele weer. Vervolgens bestaat een nieuwe tekenreeks te klinken natuurlijker wanneer tenslotte het terug naar ons wordt gesproken.
Ga je gang en geef het een proberen. Vervolgens samen met mij in de volgende stap waar we zullen kijken naar tekst laden.