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

Bài giảng Kỹ thuật lập trình nâng cao: Chương 6 - Trần Minh Thái

Chia sẻ: Y Nhân | Ngày: | Loại File: PDF | Số trang:18

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

Bài giảng "Kỹ thuật lập trình nâng cao - Chương 6: Tập tin" cung cấp các kiến thức cơ bản về lập trình lưu trữ trên tập tin (FILE), cung cấp hàm thư viện phổ biến để thao tác trên tập tin. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Kỹ thuật lập trình nâng cao: Chương 6 - Trần Minh Thái

  1. TRẦN MINH THÁI [W]www.minhthai.edu.vn [M]minhthai@itc.edu.vn
  2. * *Cung cấp các kiến thức cơ bản về lập trình lưu trữ trên tập tin (FILE) *Cung cấp hàm thư viện phổ biến để thao tác trên tập tin
  3. * *Tậ p tin văn bả n (text): tậ p tin dùng để ghi các kýtựlên đĩa theo các dòng è Dữ liệu lưu được chuyển về dạng text *Tậ p tin nhịphân (binary): tậ p tin dùng để ghi các dữ liệu dưới dạ ng mã nhịphân
  4. * *Bước 1: Mở tập tin để đọc/ ghi. *Bước 2: Các xử lýtrên tậ p tin. *Bước 3: Đóng tậ p tin.
  5. * *ifstream: Dùng đọc file. *ofstream: Dùng tạo file. *fstream: Vừa có thể tạo file và đọc dữ liệu trong file.
  6. * *Khai báo đối tượng file fstream tên_đối_tượng; *Mở file tên_đối_tượng.open(“tên file”, chế độ mở); *Đóng file tên_đối_tượng.close();
  7. * Chế độ mở Ý nghĩa ios::out Ghi nội dung vào file ios::in Đọc nội dung file ios::app Thêm nội dung vào cuối file nếu file đã có nội dung ios::binary Tạo file nhị phân (nếu không có thì mặc định mở file theo chế độ text) Kết hợp các chế độ mở file: dùng phép kết hợp or: | Kết hợp ios::in | ios::out để mở file vừa đọc và ghi
  8. * *Đọc dữ liệu từng dòng lưu vào biến chuỗi: tên_đối_tượng>>biến; hoặc tên_đối_tượng.getline(biến, độ dài tối đa); *Ghi dữ liệu vào file: tên_đối_tượng
  9. * bool TaoFile(char *s) { fstream file; file.open(s, ios::out); if(file.fail()) return false; file
  10. * *Nội dung tập tin sau khi tạo: Thu tu ngay 11 thang 04 nam 2012 170 15.9
  11. * bool DocFile(char *s) { Kết quả đọc file được char data[100]; tạo từ hàm TaoFile: fstream file; file.open(s, ios::in); Thu if(file.fail()) tu return false; ngay while(file>>data) 11 { thang cout
  12. * bool DocFile2(char *s) { char data[100]; Kết quả đọc file được tạo từ hàm fstream file; TaoFile: file.open(s, ios::in); if(file.fail()) Thu tu ngay 11 thang 04 nam 2012 return false; 170 while(!file.eof()) 15.9 { file.getline(data, 100); cout
  13. * *Viếtchương trình nhập vào một bài thơ có 5 dòng và lưu bài thơ đó vào file: “tho1.txt” *Viếtchương trình nhập vào một bài thơ bất kỳ và lưu bài thơ đó vào file: “tho2.txt” *Viết chương trình tìm câu thơ nào dài nhất trong tập tin “tho2.txt” vừa tạo
  14. * *Đọc dữ liệu từ tập tin lưu vào biến: tên_đối_tượng.read(địa chỉ biến, kt biến); *Ghi dữ liệu vào tập tin: tên_đối_tượng.write(địa chỉ biến, kt biến); ØĐịa chỉ biến có dấu & trước tên biến (địa chỉ của 1 ký tự) ØKích thước biến: dùng hàm sizeof(biến)
  15. * bool TaoFile(char *s) { char data[50]="Nguyen Van An"; int x=250; fstream file; file.open(s, ios::out|ios::binary); if(file.fail()) return false; file.write(data, sizeof(data)); file.write((char*)&x, sizeof(x)); file.close(); return true; }
  16. * bool DocFile(char *s) { char data[50]; int x; fstream file; file.open(s, ios::in|ios::binary); if(file.fail()) return false; file.read(data, sizeof(data)); cout
  17. * Viết chương trình nhập vào mảng số nguyên, kích thước n và lưu mảng này vào file “mang1c.dat” theo cấu trúc -Dòng 1 lưu số lượng phần tử -Dòng 2 lưu giá trị các phần tử trong mảng
  18. * Cho dữ liệu là file “mang1c.dat” đã tạo trước, hãy viết chương trình: *Tìm phần tử có giá trị lớn nhất *Đếm số lượng phần tử có giá trị là số nguyên tố *Thêm vào file phần tử có giá trị x vào sau phần tử có giá trị lớn nhất
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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