You are on page 1of 2

Data Structure & Algorithm

Tổng quan về xử lý file


(Phần tự nghiên cứu)
---oOo---

I. Mục tiêu
- Hiểu và thực hiện được các thao tác cơ bản trên tập tin, sử dụng C/C++
- Chuẩn bị các kỹ năng thực hành cơ bản cho những chương tiếp theo của môn học CTDL2

II. Thời gian


- Thời gian tìm hiểu và cài đặt bài tập: 1 tuần

III. Nội dung


1. Giới thiệu
- Tập tin là gì ?
- Cách thức lưu trữ tập tin trên đĩa: mức logic ? mức vật lý ?
2. Sự khác biệt cơ bản giữa tập tin và mảng
3. Nguyên tắc cơ bản khi xử lý trên file
- Mở file
- Truy xuất: đọc, ghi, dịch chuyển đầu đọc file
- Đóng file
4. Các thao tác xử lý cơ bản trên file trong C/C++
- Truy xuất file với chế độ text: Mở (fopen), đóng (fclose), đọc phần tử (fscanf, fgetc,
fgets), ghi phần tử (fprintf, fputc, fputs), kiểm tra cuối file (feof)
- Truy xuất file với chế độ nhị phân (binary): Mở (fopen), đóng (fclose), đọc phần tử
(fread, fgetc), ghi phần tử (fwrite, fputc), dịch chuyển đầu đọc file (fseek), xác định vị
trí đầu đọc file (ftell), kiểm tra cuối file (feof)
5. Vùng đệm truy xuất file (Buffer)
- Buffer là gi ?
- Công dụng của Buffer
- Các thao tác trên buffer trong C/C++: thay đổi kích thước buffer khi truy xuất file
(setbuf), làm sạch buffer (fflush, flushall)

IV. Bài tập


1. Cho 1 tập tin dạng text mang tên STRINGS.TXT
Hãy viết chương trình đọc và hiển thị nội dung tập tin lên màn hình
2. Cho 1 tập tin dạng text mang tên NUMBERS.TXT
Hãy viết chương trình đọc và hiển thị nội dung tập tin lên màn hình
3. Cho 1 tập tin dạng text mang tên ODBCINST.INI
Hãy viết chương trình đọc và hiển thị lên màn hình:
- tên file driver dùng cho kết nối ODBC của Oracle (được xác định trong mục
“Driver” của phần “Microsoft ODBC for Oracle (32 bit)”)
- tên file driver dùng cho kết nối ODBC của SQL Server (được xác định trong mục
“Driver” của phần “SQL Server (32 bit)”)

© Nguyễn Tri Tuấn – Khoa CNTT, ĐH.KHTN, TP.HCM 1/2


4. Cho 2 tập tin dạng text mang tên NUMBER1.TXT và NUMBER2.TXT. Biết rằng giá trị
các số trong mỗi tập tin có thứ tự tăng dần
Hãy viết chương trình tạo 1 file text mới có tên NUMBER12.TXT có nội dung tổng hợp
từ 2 file trên và sắp theo tứ tự tăng dần
5. Cho 1 tập tin dạng text mang tên README.TXT
Hãy viết chương trình đọc và thống kê số lần xuất hiện của mỗi loại ký tự trong file nói
trên. Phân biệt chữ thường và chữ hoa. Kết quả thống kê ghi ra 1 file text có tên
THONGKE.TXT theo mẫu sau
So loai ky tu = xxx
a=
b=
c=
d=

6. Cho 1 tập tin dạng binary mang tên NUMBERS.BIN, mỗi phần tử trong file là 1 số
nguyên (int 2 bytes). Hãy viết chương trình đọc và tính tổng giá trị các phần tử trong file
trên
7. Hãy tạo 1 file dạng binary chứa các số nguyên với dữ liệu lấy từ file NUMBERS.TXT
8. Hãy tạo 1 file dạng binary chứa các số nguyên theo thứ tự ngược lại với dữ liệu trong file
NUMBERS.BIN
9. Viết chương trình xóa 1 số nguyên cho trước trong file NUMBERS.BIN. Chương trình
thi hành theo cú pháp dòng lệnh như sau:
C:\>Bai9 X
Trong đó: X là giá trị cần xóa
10. Viết chương trình chèn 1 số nguyên cho trước vào sau 1 giá trị xác định trong file
NUMBERS.BIN. Chương trình thi hành theo cú pháp dòng lệnh như sau:
C:\>Bai10 X Y
Trong đó:
- X là giá trị cần chèn vào file. X sẽ được chèn vào sau giá trị Y. Nếu Y không tồn
tại thì X được thêm vào cuối file

--- Hết ---

© Nguyễn Tri Tuấn – Khoa CNTT, ĐH.KHTN, TP.HCM 2/2

You might also like