Cách lấy dữ liệu từ file txt trong C++

Trong ngôn ngữ lập trình, thao tác với file là một thao tác cơ bản và diễn ra thường xuyên. Ở bài viết này, chúng ta sẽ cùng nhau tìm hiểu cách lấy dữ liệu từ file txt trong C++ thông qua sử dụng thư viện fstream.

File txt là file gì?

File txt (text file) là một định dạng tập tin văn bản đơn giản, tức là không sử dụng các định dạng khác như chữ đậm, chữ nghiêng để trình bày. Dấu hiệu nhận biết của file txt trong hệ điều hành Windows là phần hậu tố (phần mở rộng) của tập tin là “‘txt”. 

Những tập tin có phần đuôi .txt có thể dễ dàng được đọc bởi bất kỳ chương trình đọc văn bản nào. Đó cũng là lý do file txt được coi là định dạng tập tin văn bản phổ biến nhất hiện nay.

Lấy dữ liệu từ file txt trong C++

Để lấy dữ liệu từ một file txt trong C++ (hay nói cách khác là đọc dữ liệu), bạn cần sử dụng toán tử trích luồng là (>>). Điều này tương tự như việc bạn sử dụng toán tử đó để nhập các dữ liệu đầu vào từ bàn phím. Tuy nhiên dữ liệu từ file txt phải được nhập vào thông qua một thư viện chuẩn C++ gọi là fstream (file input/output), hoặc ifstream (chỉ file input. dữ liệu mà bạn cần lấy sẽ được truyền đi theo một cách tuần tự qua các thư viện này để đi từ file txt ra chương trình của bạn.

Do chức năng của fstream cho phép cả việc lấy dữ liệu từ file và ghi dữ liệu vào file, nên chúng ta chỉ cần include fstream là thuận tiện nhất cho cả hai mục đích. Trong phạm vi bài viết này sẽ sử dụng thư viện fstream. Dưới đây là các bước thực hiện.

Bước 1: Include file fstream vào chương trình:

#include <fstream>

Bước 2: Tạo lập một đối tượng file input thuộc kiểu ifstream:

std::ifstream fileInput(“C:/Users/ADMIN/Desktop/my_document.txt”);

Giả sử file txt bạn muốn lấy dữ liệu ra tên là my_document.txt nằm trong thư mục Desktop trên máy tính. Thư viện ifstream có nhiều phương thức khởi tạo dữ liệu khác nhau, tuy nhiên cách đơn giản nhất là chúng ta đưa vào một string đường dẫn chính xác của file txt mà chúng ta cần lấy dữ liệu. 

Bây giờ chúng ta tiến hành kiểm tra xem file input của chúng ta có được liên kết đến file my_document.txt cần mở hay không, bằng cách:

                                        if (fileInput.fail())

std::cout << “Failed to open this file!” << std::endl;

Nếu không liên kết được, màn hình sẽ trả về kết quả:

lấy dữ liệu từ file txt trong c++

Tức là do trong thư mục Desktop của máy tính chưa có file my_document.txt. Hãy tạo ngay một file my_document.txt và thực hiện thêm dữ liệu vào file txt này. Dĩ nhiên là không thể lấy dữ liệu từ một file rỗng rồi! 

Nội dung của file my_document.txt giả sử gồm dãy số:

1 2 3 4 5

Bước 3: Nhập code lấy dữ liệu từ file txt thông qua file input như sau:

lấy dữ liệu từ file txt trong c++ 2

Trên đây mình sử dụng extraction operator (>>) để đưa dữ liệu từ file txt đã có vào lưu trong biến n rồi hiển thị ra màn hình thông qua std::cout. 

Tóm lại, với dữ liệu đã được lưu sẵn trong file txt, bạn chỉ cần tạo ra một đối tượng thuộc thư viện fstream và liên kết đến file cần lấy dữ liệu, sau đó sử dụng toán tử (>>) để đưa dữ liệu vào biến. 

Thao tác lấy dữ liệu từ file txt trong C++ khá đơn giản nhờ có thư viện fstream phải không nào? Chúc các bạn thực hiện thành công!

Tags:

We will be happy to hear your thoughts

Leave a reply