aktueller Stand
This commit is contained in:
parent
b363690c19
commit
791fe54411
@ -6,18 +6,19 @@ import java.io.FileNotFoundException;
|
|||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.net.HttpURLConnection;
|
import java.net.HttpURLConnection;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
|
||||||
public class WetterAPI {
|
public class WetterAPI {
|
||||||
private static final String API(String mode, String ort) {
|
private static final String API(String mode, String ort) throws Exception {
|
||||||
return new StringBuilder()
|
return new StringBuilder()
|
||||||
.append("https://api.openweathermap.org/data/2.5/")
|
.append("https://api.openweathermap.org/data/2.5/")
|
||||||
.append(mode)
|
.append(mode)
|
||||||
.append("?units=metric&lang=de&appid=")
|
.append("?units=metric&lang=de&appid=")
|
||||||
.append(readApiKey("env.txt"))
|
.append(readApiKey("env.txt"))
|
||||||
.append("&q=")
|
.append("&q=")
|
||||||
.append(ort)
|
.append(URLEncoder.encode(ort, "UTF-8"))
|
||||||
.toString();
|
.toString();
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -37,7 +38,7 @@ public class WetterAPI {
|
|||||||
|
|
||||||
int responseCode = connection.getResponseCode();
|
int responseCode = connection.getResponseCode();
|
||||||
if(responseCode != 200) {
|
if(responseCode != 200) {
|
||||||
throw new Exception("Fehler bei der Anfrage: " + responseCode);
|
throw new Exception("Dieser Ort wurde nicht gefunden.");
|
||||||
}
|
}
|
||||||
|
|
||||||
try(BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()))) {
|
try(BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()))) {
|
||||||
|
@ -17,6 +17,10 @@ public class WetterApp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void start() {
|
public void start() {
|
||||||
|
this.clearScreen();
|
||||||
|
|
||||||
|
while(true) {
|
||||||
|
System.out.println();
|
||||||
System.out.println("Wetter Schmetter");
|
System.out.println("Wetter Schmetter");
|
||||||
System.out.println("---------");
|
System.out.println("---------");
|
||||||
System.out.println("1. Aktuelles Wetter");
|
System.out.println("1. Aktuelles Wetter");
|
||||||
@ -24,6 +28,7 @@ public class WetterApp {
|
|||||||
System.out.println("3. Beenden");
|
System.out.println("3. Beenden");
|
||||||
|
|
||||||
int auswahl = this.readInputInt();
|
int auswahl = this.readInputInt();
|
||||||
|
this.clearScreen();
|
||||||
|
|
||||||
switch(auswahl) {
|
switch(auswahl) {
|
||||||
case 1:
|
case 1:
|
||||||
@ -34,11 +39,14 @@ public class WetterApp {
|
|||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
System.out.println("Beenden...");
|
System.out.println("Beenden...");
|
||||||
|
scanner.close();
|
||||||
|
System.exit(0);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
System.out.println("Ungültige Eingabe");
|
System.out.println("Ungültige Eingabe");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void getAktuellesWetter() {
|
private void getAktuellesWetter() {
|
||||||
System.out.println("Geben Sie einen Ort ein:");
|
System.out.println("Geben Sie einen Ort ein:");
|
||||||
@ -76,16 +84,18 @@ public class WetterApp {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void printWetterDaten(WetterDaten wetterDaten) {
|
private void printWetterDaten(WetterDaten wetterDaten) {
|
||||||
|
System.out.println();
|
||||||
System.out.println("Wetter in " + wetterDaten.getOrt());
|
System.out.println("Wetter in " + wetterDaten.getOrt());
|
||||||
System.out.println("Temperatur: " + wetterDaten.getTemperatur() + " °C");
|
System.out.println("Temperatur: " + wetterDaten.getTemperatur() + " °C");
|
||||||
System.out.println("Luftdruck: " + wetterDaten.getLuftdruck() + " hPa");
|
System.out.println("Luftdruck: " + wetterDaten.getLuftdruck() + " hPa");
|
||||||
System.out.println("Luftfeuchtigkeit: " + wetterDaten.getLuftfeuchtigkeit() + " %");
|
System.out.println("Luftfeuchtigkeit: " + wetterDaten.getLuftfeuchtigkeit() + " %");
|
||||||
scanner.close();
|
System.out.println();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void printWetterVorhersage(String json) {
|
private void printWetterVorhersage(String json) {
|
||||||
JSONObject jsonObject = new JSONObject(json);
|
JSONObject jsonObject = new JSONObject(json);
|
||||||
JSONArray forecastArray = jsonObject.getJSONArray("list");
|
JSONArray forecastArray = jsonObject.getJSONArray("list");
|
||||||
|
System.out.println();
|
||||||
|
|
||||||
for(int i = 0; i < forecastArray.length(); i += 8) {
|
for(int i = 0; i < forecastArray.length(); i += 8) {
|
||||||
JSONObject forecastObject = forecastArray.getJSONObject(i);
|
JSONObject forecastObject = forecastArray.getJSONObject(i);
|
||||||
@ -98,7 +108,6 @@ public class WetterApp {
|
|||||||
System.out.println("Luftdruck: " + luftdruck + " hPa");
|
System.out.println("Luftdruck: " + luftdruck + " hPa");
|
||||||
System.out.println();
|
System.out.println();
|
||||||
}
|
}
|
||||||
scanner.close();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private String readInput() {
|
private String readInput() {
|
||||||
@ -110,4 +119,9 @@ public class WetterApp {
|
|||||||
scanner.nextLine();
|
scanner.nextLine();
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void clearScreen() {
|
||||||
|
System.out.print("\033[H\033[2J");
|
||||||
|
System.out.flush();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user