Hejka, przesyłam wam program pogodynka, parsowanie url-a w dość charakterytyczny sposób, zad. Parsowanie URL z Programowania w Javie, wklejam kod znaleziony na "http://www.coderscity.pl/" Kod nie jest mój więc za przypadkowe błędy nie odpowiadam. Może komuś się to przyda ;)
import java.io.*;
import java.net.MalformedURLException;
import java.net.URL;
public class Parser {
private static URL url;
private static BufferedReader in;
public static String parsujURL(String s)
{
switch(s)
{
case "Białystok":
try {
url=new URL("http://www.twojapogoda.pl/polska/podlaskie/bialystok");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Bydgoszcz":
try {
url=new URL("http://www.twojapogoda.pl/polska/kujawsko-pomorskie/bydgoszcz");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Gdańsk": try {
url=new URL("http://www.twojapogoda.pl/polska/pomorskie/gdansk");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Gorzów Wlkp.":
try {
url=new URL("http://www.twojapogoda.pl/polska/lubuskie/gorzow-wielkopolski");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Katowice": try {
url=new URL("http://www.twojapogoda.pl/polska/slaskie/katowice");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Kielce":
try {
url=new URL("http://www.twojapogoda.pl/polska/swietokrzyskie/kielce");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Kraków": try {
url=new URL("http://www.twojapogoda.pl/polska/malopolskie/krakow");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Lublin":
try {
url=new URL("http://www.twojapogoda.pl/polska/lubelskie/lublin");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Łódź":
try {
url=new URL("http://www.twojapogoda.pl/polska/lodzkie/lodz");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Olsztyn":
try {
url=new URL("http://www.twojapogoda.pl/polska/warminsko-mazurskie/olsztyn");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Opole":
try {
url=new URL("http://www.twojapogoda.pl/polska/opolskie/opole");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Poznań":
try {
url=new URL("http://www.twojapogoda.pl/polska/wielkopolskie/poznan");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Rzeszów":
try {
url=new URL("http://www.twojapogoda.pl/polska/podkarpackie/rzeszow");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Szczecin":
try {
url=new URL("http://www.twojapogoda.pl/polska/zachodniopomorskie/szczecin");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Toruń":
try {
url=new URL("http://www.twojapogoda.pl/polska/kujawsko-pomorskie/torun");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Warszawa":
try {
url=new URL("http://www.twojapogoda.pl/polska/mazowieckie/warszawa");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Wrocław":
try {
url=new URL("http://www.twojapogoda.pl/polska/dolnoslaskie/wroclaw");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
case "Zielona Góra":
try {
url=new URL("http://www.twojapogoda.pl/polska/lubuskie/zielona-gora");
}
catch (MalformedURLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break;
}
try {
in = new BufferedReader(new InputStreamReader(url.openStream()));
return czytaj();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "";
}
private static String czytaj() throws IOException
{
String tekst="";
boolean f=true;
boolean g=true;
boolean h=true;
int pocz;
int kon;
String inputLine;
while ((inputLine = in.readLine()) != null)
{
if(inputLine.contains("sup")&&f)
{
pocz=inputLine.indexOf('>');
kon=inputLine.indexOf('<',pocz);
tekst+="Temperatura: "+inputLine.substring(pocz+1,kon)+"\n";
f=false;
}
if(inputLine.contains("mm")&&g)
{
pocz=inputLine.indexOf('>');
kon=inputLine.indexOf('<',pocz);
tekst+="Opady: "+inputLine.substring(pocz+1,kon)+"\n";
g=false;
}
if(inputLine.contains("hPa")&&h)
{
pocz=inputLine.indexOf('>');
kon=inputLine.indexOf('<',pocz);
tekst+="Ciśnienie: "+inputLine.substring(pocz+1,kon)+"\n";
h=false;
}
}
return tekst;
}
}