Podstawy importu danych

Importowanie danych w Javie

Anthony Markham

VP Quant Developer

Poznaj swojego instruktora!

 

$$

Anthony Markham

  • VP, Quantitative Developer/Analytics Lead
  • Programista C++/Java/Python w bankowości inwestycyjnej
  • Doświadczenie w nauczaniu akademickim

 

Anthony Markham

Importowanie danych w Javie

Podstawy importu danych

  • Niezbędny do przetwarzania danych zewnętrznych w aplikacjach Java

  • Popularne formaty to CSV (wartości rozdzielane przecinkami), JSON i Excel

Schemat blokowy przedstawiający pięć kroków przepływu importu

  • Java oferuje zaawansowane narzędzia w pakietach java.io i java.nio
Importowanie danych w Javie

Podstawy obsługi plików

  • Klasa File reprezentuje pliki lub katalogi
  • Metody takie jak exists(), length() i isDirectory() umożliwiają walidację pliku
import java.io.File;
File dataFile = new File("data.csv");
boolean exists = dataFile.exists();
long size = dataFile.length();
boolean isDirectory = dataFile.isDirectory();
Importowanie danych w Javie

Interfejs Path i klasa Files

  • Interfejs Path i klasa Files zapewniają nowoczesne operacje na plikach (java.nio)
  • Zalety: większa elastyczność, lepsza obsługa wyjątków i wydajność
  • java.io do prostych operacji; java.nio do operacji wejścia/wyjścia o wysokiej wydajności
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
Path dataPath = Paths.get("data.csv");

boolean exists = Files.exists(dataPath); long size = Files.size(dataPath);
Importowanie danych w Javie

Odczyt plików tekstowych

  • Files.readAllLines(): Wczytuje cały plik do List<String> (jeden element na wiersz)
  • Files.readString(): Wczytuje cały plik jako pojedynczy ciąg
Path file = Paths.get("data.csv");

// Read all lines at once List<String> lines = Files.readAllLines(file); // Read entire file as a string String content = Files.readString(file);

$$

$$

  • Cały plik jest ładowany do pamięci 🛑
Importowanie danych w Javie

Walidacja danych

  • Zapewnia jakość danych przed przetworzeniem
  • Sprawdź jakość i strukturę danych
  • Wykonaj typowe walidacje
  • Obsłuż wyjątki Exception

Kontrole walidacji danych

Importowanie danych w Javie

Walidacja danych

  • Typowe sprawdzenia: weryfikacja, czy plik nie jest pusty, potwierdzenie wymaganych kolumn w nagłówku
  • Obsłuż Exception blokiem try-catch ✅
try {
  Path file = Paths.get("data.csv");
  List<String> lines = Files.readAllLines(file);
  if (lines.isEmpty()) { // Validate file has content
      System.out.println("Warning: File is empty");}
  String header = lines.get(0);
  if (!header.contains("id") || !header.contains("name")) {    // Check header
      System.out.println("Error: File missing required columns");
} catch (Exception e) {
    System.out.println("Error reading file: " + e.getMessage());}
Importowanie danych w Javie

Podsumowanie

Klasa/Interfejs Metoda Opis
File new File() Tworzy abstrakcyjną reprezentację ścieżki pliku
File exists() Sprawdza, czy plik istnieje
File length() Zwraca rozmiar pliku w bajtach
Paths get() Tworzy obiekt Path z ciągu znaków
Files exists() Sprawdza, czy plik istnieje (nowe API)
Files size() Zwraca rozmiar pliku w bajtach (nowe API)
Files readAllLines() Wczytuje cały plik do List<String>
Files readString() Wczytuje cały plik jako pojedynczy String
1 https://docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html
Importowanie danych w Javie

Czas na ćwiczenia!

Importowanie danych w Javie

Preparing Video For Download...