Program Pogodynka - Pars URL

Program Pogodynka - Pars URL
AB
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1
0

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 ;)

Kopiuj
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;
	}
}
Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Ale co to w ogóle jest? Chciałeś sie pochwalic ze umiesz zrobić copy-paste switch-case na 200 linijek? o_O Ciekawe co byś zrobił jakbyś chciał wszystkie miasta w polsce. Albo na świecie...

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
0

@Abruzzi: to boli... ten kod wypala od wewnątrz...

bakeraw2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 400
0

Już sobie wyobrażam jak autor chce w kodzie umieścić wszystkie miasta w Polsce a potem szuka błędu w kodzie jeśli taki wystąpi... wtf? :D

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.