intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình hướng đối tượng: Bài 9 - Phạm Thị Bích Vân

Chia sẻ: Estupendo Estupendo | Ngày: | Loại File: PPTX | Số trang:21

49
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài 9 - Lập trình điều khiển nhập/xuất. Bài này gồm có những nội dung chính sau: Nhập/xuất thiết bị, dòng xuất, nhập/xuất không định dạng, ghi dữ liệu vào file, đọc dữ liệu từ file, đọc/ghi cả đối tượng. Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng: Bài 9 - Phạm Thị Bích Vân

  1. Bài 9: Lập trình điều khiển  nhập/xuất
  2. Giới thiệu • Nhập/xuất bao gồm: ▫ Nhập xuất từ bàn phím. ▫ Nhập xuất từ file. • Phần lớn các đặc tính nhập xuất cho phép nạp  chồng hàm và nạp chồng toán tử. ⇒ Ngoài nhập xuất các kiểu dữ liệu cơ bản, người  dùng có thể xây dựng nhập/xuất cho kiểu dữ liệu  người dùng định nghĩa  ⇒ Là đặc tính mở quan trọng của C++.
  3. Nhập/xuất thiết bị • Thư viện iostream.h cung cấp khả năng lớn các  kiểu nhập xuất. • Thư viện này bao gồm các lớp:
  4. Dòng xuất • Ostream cung cấp các khả năng xuất định dạng và xuất  không định dạng. • cout là đối tượng thuộc lớp ostream là xuất dòng ra màn  hình. • Toán tử chèn dòng 
  5. Dòng nhập • istream cung cấp các khả năng nhập định dạng và không  định dạng. • cin là đối tượng thuộc lớp istream, là dòng nhập từ bàn  phím. • Toán tử trích >> để đưa các giá trị từ dòng nhập vào các  biến. • Toán tử >> đã được nạp chồng để làm việc với các kiểu dữ  liệu định sẵn, kiểu string, giá trị con trỏ. Cho phép người  dùng nạp chồng để thực hiện với kiểu dl người dùng định  nghĩa. • Các hàm khác của dòng nhập: get(), getline(), ignore(),  putback()­ đặt ký tự trở lại dòng nhập
  6. Nhập/xuất không định dạng • Nhập/xuất không định dạng được thực hiện với các  hàm thành viên istream::read() và ostream::write(). • Hàm istream::read(): ▫ istream& read(unsigned char* puch, int nCount); ▫ istream& read(signed char* psch, int nCount); Trích các byte từ dòng cho đến khi giới hạn nCount đạt đến hoặc  cho đến khi end­ of­file đạt đến. Hàm  này có ích cho dòng nhập nhị  phân
  7. Nhập/xuất không định dạng • Hàm ostream::write(): ▫ ostream& write(const unsigned char* puch, int nCount); ▫ ostream& write(const signed char* psch, int nCount); Chèn nCount byte vào từ vùng đệm (được trỏ bởi puch và psch)  vào dòng. Nếu file được mở ở chế độ text, các ký tự CR có thể được  chèn vào. Hàm này có ích cho dòng xuất nhị phân • Hàm istream::gcount(): int gcount();
  8. Nhập xuất file • C++ hỗ trợ các lớp: ▫ ofstream  dùng để tạo các dòng xuất (ghi tệp)             ▫ ifstream    dùng để tạo các dòng nhập (đọc tệp) ▫ fstream     dùng để tạo các dòng nhập, dòng xuất  hoặc dòng nhập­xuất
  9. Làm việc với File
  10. Ghi dữ liệu vào File • 1. Dùng lớp ofstream để tạo ra một dòng xuất và  gắn nó với một tệp cụ thể. Khi đó việc xuất dữ  liệu ra dòng này đồng nghĩa với việc ghi dữ liệu lên  tệp. • 2. Thực hiện xuất dữ liệu ra dòng xuất vừa tạo như  thể xuất dữ liệu ra dòng xuất chuẩn cout
  11. Ghi dữ liệu vào file • Tạo một đối tượng thuộc ofstream để mở một  file • Cách 1 ▫ ofstream outFile("data.txt"); • Cách 2 ▫ ofstream outFile; ▫ outFile.open("data.txt); • Cách 3 ▫ ofstream out("data.txt", ios::nocreate);
  12. Ghi dữ liệu vào file • File Mode: ▫ ios::app means append the file ▫ ios::ate means position the file ▫ ios::nocreate means the file must exist, otherwise  the open fails ▫ ios::noreplace means the file must not exist,  otherwise the open fails
  13. Ví dụ • ofstream out("data.txt", ios::nocreate); if(out) if(!out)    cout
  14. Ghi dữ liệu vào File Khi đã có đối tượng mở file ta có thể ghi dữ liệu  ra file như sau: out
  15. Đọc dữ liệu từ File • Tạo một đối tượng dòng nhập thuộc lớp  ifstream, mở một tệp để đọc và gắn tệp với  dòng nhập.  • Sau đó dùng toán tử nhập >> và các phương  thức để nhập dữ liệu từ dòng nhập vừa tạo như  thể nhập dữ liệu từ cin 
  16. Ví dụ ifstream someData("data.txt"); char aChar; someData.get(aChar); while(someData) {   someData.get(aChar);   cout
  17. #include while(cin >> stuId >> name >>  #include gpa) #include { using namespace std; outFile 
  18. Ví dụ đọc dữ liệu từ tệp xuất ra màn hình else #include { #include cout 
  19. Đọc / ghi cả đối tượng class Student ostream& operator
  20. Đọc / ghi cả đối tượng #include while (cin >> aStudent) #include { #include outFile 
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2