C# Academy · บทเรียน

การอ่านและเขียนไฟล์

เรียนรู้วิธีสร้าง อ่าน และเขียนไฟล์โดยใช้ C#

บทเรียน 1 จาก 510 ขั้นตอน

การอ่านและเขียนไฟล์ เป็นบทเรียน C# Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 5 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C# Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C# Academy มีบทเรียนทั้งหมด 5 บทเรียน

บทนำเกี่ยวกับการรับส่งข้อมูลไฟล์

การอ่านและเขียนไฟล์

ยินดีต้อนรับสู่บทเรียนแรกในหมวดหมู่ "การทำงานกับไฟล์และข้อมูล"! ในบทเรียนนี้ คุณจะได้เรียนรู้วิธีอ่านและเขียนไฟล์ใน C# ซึ่งช่วยให้คุณจัดเก็บและเรียกคืนข้อมูลในไฟล์ข้อความได้ มาเริ่มกันเลย!

การอ่านและเขียนไฟล์ — ภาพประกอบ 1

เหตุใดจึงทำงานกับไฟล์

ไฟล์ช่วยให้โปรแกรมเก็บข้อมูลไว้ได้อย่างถาวร ทำให้ข้อมูลยังคงพร้อมใช้งานแม้ปิดแอปพลิเคชันแล้ว ไม่ว่าจะเป็นการจัดเก็บข้อมูลผู้ใช้ บันทึก หรือการกำหนดค่า การจัดการไฟล์ก็เป็นทักษะสำคัญสำหรับนักพัฒนา

ประเด็นสำคัญ: C# มีคลาสในตัว เช่น File, StreamReader และ StreamWriter สำหรับจัดการการทำงานกับไฟล์

การอ่านไฟล์

เมื่อต้องการอ่านเนื้อหาของไฟล์ ให้ใช้เมธอด File.ReadAllText() สำหรับไฟล์ขนาดเล็ก หรือใช้ StreamReader สำหรับไฟล์ขนาดใหญ่ ตัวอย่าง:

ประเด็นสำคัญ: ตรวจสอบเสมอว่ามีไฟล์อยู่ก่อนพยายามอ่านไฟล์

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "example.txt";

        // Reading a file using File.ReadAllText()
        if (File.Exists(filePath)) {
            string content = File.ReadAllText(filePath);
            Console.WriteLine("File Content:");
            Console.WriteLine(content);
        } else {
            Console.WriteLine("File does not exist.");
        }
    }
}

การเขียนไฟล์

เมื่อต้องการเขียนข้อมูลลงในไฟล์ ให้ใช้เมธอด File.WriteAllText() สำหรับไฟล์ขนาดเล็ก หรือใช้ StreamWriter เพื่อควบคุมการทำงานได้มากขึ้น ตัวอย่าง:

เคล็ดลับ: ใช้ File.AppendAllText() เพื่อเพิ่มข้อมูลลงในไฟล์ที่มีอยู่โดยไม่เขียนทับข้อมูลเดิม

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "output.txt";
        string content = "Hello, this is a test file.";

        // Writing to a file using File.WriteAllText()
        File.WriteAllText(filePath, content);
        Console.WriteLine("File written successfully.");
    }
}

การอ่านไฟล์ทีละบรรทัด

สำหรับไฟล์ขนาดใหญ่ การอ่านทีละบรรทัดโดยใช้ StreamReader จะมีประสิทธิภาพมากกว่า ตัวอย่าง:

ประเด็นสำคัญ: ใช้คำสั่ง using เพื่อให้แน่ใจว่าไฟล์ถูกปิดอย่างถูกต้องหลังอ่านเสร็จ

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "example.txt";

        // Reading a file line by line using StreamReader
        if (File.Exists(filePath)) {
            using (StreamReader reader = new StreamReader(filePath)) {
                string line;
                while ((line = reader.ReadLine()) != null) {
                    Console.WriteLine(line);
                }
            }
        } else {
            Console.WriteLine("File does not exist.");
        }
    }
}

การเพิ่มข้อมูลลงในไฟล์

เมื่อต้องการเพิ่มข้อมูลลงในไฟล์ที่มีอยู่ ให้ใช้ File.AppendAllText() หรือใช้ StreamWriter โดยตั้งค่าแฟล็ก append เป็น true ตัวอย่าง:

เคล็ดลับ: ใช้ Environment.NewLine เพื่อให้แน่ใจว่าการขึ้นบรรทัดทำงานอย่างถูกต้อง

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "output.txt";
        string newContent = "This line will be appended.";

        // Appending data to a file
        File.AppendAllText(filePath, newContent + Environment.NewLine);
        Console.WriteLine("Data appended successfully.");
    }
}

โจทย์ฝึกปฏิบัติ

สร้างโปรแกรมที่เขียนรายชื่อที่ผู้ใช้ป้อนลงในไฟล์ จากนั้นอ่านไฟล์เพื่อแสดงรายชื่อเหล่านั้น ตัวอย่าง:

using System;
using System.IO;

class Program {
    static void Main() {
        string filePath = "names.txt";

        // Writing user-entered names to a file
        Console.WriteLine("Enter names (type 'exit' to stop):");
        using (StreamWriter writer = new StreamWriter(filePath)) {
            string name;
            while ((name = Console.ReadLine()) != "exit") {
                writer.WriteLine(name);
            }
        }

        // Reading the file
        Console.WriteLine("\nNames in the file:");
        using (StreamReader reader = new StreamReader(filePath)) {
            string line;
            while ((line = reader.ReadLine()) != null) {
                Console.WriteLine(line);
            }
        }
    }
}

แนวทางปฏิบัติที่ดีสำหรับการจัดการไฟล์

ต่อไปนี้คือแนวทางปฏิบัติที่ดี:

  • ตรวจสอบเสมอว่ามีไฟล์อยู่ก่อนอ่านหรือเพิ่มข้อมูลลงในไฟล์
  • ใช้คำสั่ง using เพื่อปิดสตรีมไฟล์โดยอัตโนมัติ
  • จัดการข้อยกเว้นเพื่อป้องกันโปรแกรมหยุดทำงานเมื่อพบไฟล์ที่หายไปหรือถูกล็อก

เคล็ดลับ: การจัดการไฟล์อย่างเหมาะสมช่วยให้โปรแกรมทำงานได้อย่างทนทานและปราศจากข้อผิดพลาด

ทบทวนการอ่านและเขียนไฟล์

ทำได้ดีมาก!

ขอแสดงความยินดีด้วย! คุณได้เรียนรู้วิธีอ่านและเขียนไฟล์ใน C# แล้ว ในบทเรียนถัดไป เราจะสำรวจการทำงานกับรูปแบบข้อมูล JSON และ XML มาร่วมเขียนโค้ดกันต่อไปนะครับ!

การอ่านและเขียนไฟล์ — ภาพประกอบ 10
เริ่มต้นได้ฟรี

เรียนรู้ C# ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
93
บทเรียน
346

คำถามที่พบบ่อย

บทเรียน “การอ่านและเขียนไฟล์” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การอ่านและเขียนไฟล์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C# Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C# Academy มีบทเรียนทั้งหมด 5 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การอ่านและเขียนไฟล์”

เรียนรู้วิธีสร้าง อ่าน และเขียนไฟล์โดยใช้ C# คุณปฏิบัติ C# Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C# Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน C# Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 5 บทเรียน

บทเรียน “การอ่านและเขียนไฟล์” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน C# Academy นี้ได้ไหม

ได้ บทเรียน C# Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การอ่านและเขียนไฟล์
  2. การทำงานกับ JSON และ XML
  3. ทำความเข้าใจการจัดการข้อยกเว้น
  4. การทำงานกับฐานข้อมูล
  5. ใช้ LINQ สำหรับค้นข้อมูล
← กลับไปที่ C# Academy