Bài tập đọc ghi file trong C#

Để củng cố những kiến thức đã học đọc ghi file trong lập trình C#. Mời bạn đọc cùng thực hành qua một số bài tập C# cơ bản dưới đây.

Bài tập đọc ghi file trong C#

1. Bài 01

Hoạt động ghi file

Viết chương trình C# để yêu cầu người dùng nhập một vài câu text cho tới khi nhấn Enter hai lần và lưu phần nội dung này trong test.txt.

Dưới đây là chương trình C# minh họa lời giải cho bài tập hoạt động ghi file trong C#. Bạn cần sử dụng System.IO namespace cho hoạt động đọc ghi file.

using System;
using System.IO;

namespace Csharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            Console.WriteLine("\nChuong trinh ghi file trong C#");
            Console.WriteLine("-----------------------------\n");
            string sentence = " ";
            StreamWriter myfile;
            myfile = File.CreateText("test.txt");
            do
            {
                Console.Write("Nhap mot cau text: ");
                sentence = Console.ReadLine();
                if (sentence.Length != 0)
                {
                    myfile.WriteLine(sentence);
                }
            }
            while (sentence.Length != 0);
            myfile.Close();

            Console.ReadKey();
        }
    }
}

Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.

2. Bài 02

Hoạt động ghi file

Viết chương trình C# để yêu cầu người dùng nhập một vài câu text cho tới khi nhấn Enter hai lần và lưu nội dung trong test.txt. Nếu file này đã tồn tại thì phần nội dung này sẽ được phụ thêm vào cuối file.

Dưới đây là chương trình C# minh họa lời giải cho bài tập ghi file trong C#. Bạn cần sử dụng System.IO namespace cho hoạt động đọc ghi file.

using System;
using System.IO;

namespace Csharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            Console.WriteLine("\nChuong trinh ghi file trong C#");
            Console.WriteLine("-----------------------------\n");
            StreamWriter myFile = File.AppendText("file.txt");
            string line;

            do
            {
                Console.Write("Nhap mot cau text: ");
                line = Console.ReadLine();

                if (line != "")
                    myFile.WriteLine(line);
            }
            while (line != "");

            myFile.Close();

            Console.ReadKey();
        }
    }
}

Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.

Biên dịch và chạy chương trình C# trên sẽ cho kết quả:

3. Bài 03

Mở file và hiển thị nội dung file trên màn hình

Viết chương trình C# để mở file có tên được nhập từ bàn phím và sau đó hiển thị nội dung file trên màn hình. Bạn cần sử dụng StreamReader.

Dưới đây là chương trình C# minh họa lời giải cho bài tập mở file và hiển thị nội dung file trên màn hình trong C#. Bạn cần sử dụng System.IO namespace cho hoạt động đọc ghi file.

using System;
using System.IO;

namespace Csharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            Console.WriteLine("\nMo file va hien thi noi dung file tren man hinh:");
            Console.WriteLine("------------------------------------------------\n");
            Console.Write("Nhap ten file: ");
            string nameFile = Console.ReadLine();

            StreamReader myfile;
            try
            {
                myfile = File.OpenText(nameFile);
                string line = " ";
                do
                {
                    line = myfile.ReadLine();
                    if (line != null)
                    {
                        Console.WriteLine(line);
                    }
                }
                while (line != null);
            }
            catch (Exception e)
            {
                Console.WriteLine("Xay ra loi trong khi mo file.");
            }
            Console.ReadLine();

            Console.ReadKey();
        }
    }
}
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.

4. Bài 04

Đếm số từ trong file

Viết chương trình C# để đếm số từ được lưu giữ trong một file.

Dưới đây là chương trình C# minh họa lời giải cho bài tập đếm số từ trong file trong C#. Bạn cần sử dụng System.IO namespace cho hoạt động đọc ghi file.

using System;
using System.IO;

namespace Csharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            Console.WriteLine("\nChuong trinh C# de Dem so tu trong File:");
            Console.WriteLine("-------------------------------------------\n");
            StreamReader file = File.OpenText("test.txt");
            string line;
            int amountOfWords = 0;
            do
            {
                line = file.ReadLine();
                if (line != null)
                {
                    string[] words = line.Split(' ');
                    amountOfWords += words.Length;
                }
            }
            while (line != null);
            file.Close();
            Console.WriteLine("Tong so tu co trong test.txt la: " + amountOfWords);

            Console.ReadKey();
        }
    }
}
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.

Giả sử, nội dung của test.txt như sau: (đã tạo trong các bài tập trước)

Biên dịch và chạy chương trình C# trên sẽ cho kết quả:

5. Bài 05

Sao chép file

Viết chương trình C# để sao chép nội dung từ file này sang file khác.

Dưới đây là chương trình C# minh họa lời giải cho bài tập sao chép file trong C#. Bạn cần sử dụng System.IO namespace cho hoạt động đọc ghi file.

using System;
using System.IO;

namespace Csharp
{
    class TestCsharp
    {
        static void Main(string[] args)
        {
            Console.WriteLine("\nSao chep file trong C#:");
            Console.WriteLine("--------------------------\n");
            const int BUFFER_SIZE = 512 * 1024;

            byte[] data = new byte[BUFFER_SIZE];

            FileStream inFile = File.OpenRead("test.txt");
            FileStream outFile = File.Create("test2.txt");

            int amountRead;

            do
            {
                amountRead = inFile.Read(data, 0, BUFFER_SIZE);
                outFile.Write(data, 0, amountRead);
            }
            while (amountRead == BUFFER_SIZE);

            inFile.Close();
            outFile.Close();

            Console.ReadKey();
        }
    }
}
Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.
Trên đây là một số bài tập về nhập xuất file trong C#.  Chúng tôi hy vọng, với những bài tập đơn giản này, giúp bạn đọc củng cố lại nguồn kiến thức của mình đã học về nhập xuất file trong C#.  Chúc các bạn thành công!
Ngày:03/11/2020 Chia sẻ bởi:Hoang Oanh Nguyen

CÓ THỂ BẠN QUAN TÂM