ทำความเข้าใจพื้นฐานการนำเข้าข้อมูล

การนำเข้าข้อมูลใน Java

Anthony Markham

VP Quant Developer

แนะนำผู้สอน!

 

$$

Anthony Markham

  • VP, Quantitative Developer/Analytics Lead
  • นักพัฒนา C++/Java/Python ในสายงาน Investment Banking
  • มีประสบการณ์สอนในระดับมหาวิทยาลัย

 

Anthony Markham

การนำเข้าข้อมูลใน Java

พื้นฐานการนำเข้าข้อมูล

  • จำเป็นสำหรับการประมวลผลข้อมูลภายนอกในแอปพลิเคชัน Java

  • รูปแบบที่พบบ่อย ได้แก่ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค), JSON และ Excel

แผนผังแสดงขั้นตอนทั้งห้าในกระบวนการนำเข้าข้อมูล

  • Java มีเครื่องมือที่ครบครันในแพ็กเกจ java.io และ java.nio
การนำเข้าข้อมูลใน Java

พื้นฐานการจัดการไฟล์

  • คลาส File ใช้แทนไฟล์หรือไดเรกทอรี
  • เมธอด เช่น exists(), length() และ isDirectory() ช่วยตรวจสอบไฟล์
import java.io.File;
File dataFile = new File("data.csv");
boolean exists = dataFile.exists();
long size = dataFile.length();
boolean isDirectory = dataFile.isDirectory();
การนำเข้าข้อมูลใน Java

อินเทอร์เฟซ Path และคลาส Files

  • อินเทอร์เฟซ Path และคลาส Files รองรับการทำงานกับไฟล์แบบทันสมัย (java.nio)
  • ข้อดี: ยืดหยุ่นกว่า จัดการข้อยกเว้นได้ดีกว่า และมีประสิทธิภาพสูงกว่า
  • java.io สำหรับงานไฟล์ทั่วไป; java.nio สำหรับงาน I/O ประสิทธิภาพสูง
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);
การนำเข้าข้อมูลใน Java

การอ่านไฟล์ข้อความ

  • Files.readAllLines(): อ่านไฟล์ทั้งหมดเป็น List<String> (หนึ่งองค์ประกอบต่อบรรทัด)
  • Files.readString(): อ่านไฟล์ทั้งหมดเป็น String เดียว
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);

$$

$$

  • ไฟล์ทั้งหมดจะถูกโหลดเข้าหน่วยความจำ 🛑
การนำเข้าข้อมูลใน Java

การตรวจสอบข้อมูล

  • ช่วยให้มั่นใจในคุณภาพข้อมูลก่อนประมวลผล
  • ตรวจสอบคุณภาพและโครงสร้างของข้อมูล
  • ดำเนินการตรวจสอบที่พบบ่อย
  • จัดการ Exception ที่อาจเกิดขึ้น

การตรวจสอบคุณภาพข้อมูล

การนำเข้าข้อมูลใน Java

การตรวจสอบข้อมูล

  • การตรวจสอบทั่วไป: ตรวจว่าไฟล์ไม่ว่างเปล่า และยืนยันว่ามีคอลัมน์ที่จำเป็นในส่วนหัว
  • จัดการ Exception ด้วยบล็อก 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());}
การนำเข้าข้อมูลใน Java

สรุป

คลาส/อินเทอร์เฟซ เมธอด คำอธิบาย
File new File() สร้างตัวแทนเชิงนามธรรมของพาธไฟล์
File exists() ตรวจสอบว่าไฟล์มีอยู่หรือไม่
File length() ดึงขนาดไฟล์เป็นไบต์
Paths get() สร้างอ็อบเจกต์ Path จาก String
Files exists() ตรวจสอบว่าไฟล์มีอยู่หรือไม่ (API ทันสมัย)
Files size() ดึงขนาดไฟล์เป็นไบต์ (API ทันสมัย)
Files readAllLines() อ่านไฟล์ทั้งหมดเป็น List<String>
Files readString() อ่านไฟล์ทั้งหมดเป็น String เดียว
1 https://docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html
การนำเข้าข้อมูลใน Java

มาฝึกกันเถอะ!

การนำเข้าข้อมูลใน Java

Preparing Video For Download...