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

TẬP TIN VĂN BẢN – TẬP TIN NHỊ PHÂN

Chia sẻ: Abcdef_15 Abcdef_15 | Ngày: | Loại File: PDF | Số trang:4

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

1. Phân loại Tập tin là hình thức lưu trữ phổ biến trên bộ nhớ phụ, gồm 2 loại: Ø Tập tin văn bản: là tập tin chỉ lưu trữ thuần túy văn bản, trong đó các kí tự được biểu diễn bằng mã ASCII của nó, người dùng có thể đọc được. Tính chất: § Dễ truy xuất và xử lí § Độ bảo mật kém § Tốc độ truy xuất kém § Kích thước lớn. - Vd: Lưu số nguyên 12345 ở dạng binary (2 byte) và dạng chuỗi (5 byte). Các dạng thường gặp: § Tập tin...

Chủ đề:
Lưu

Nội dung Text: TẬP TIN VĂN BẢN – TẬP TIN NHỊ PHÂN

  1. TẬP TIN VĂN BẢN – TẬP TIN NHỊ PHÂN 1. Phân loại Tập tin là hình thức lưu trữ phổ biến trên bộ nhớ phụ, gồm 2 loại: Ø Tập tin văn bản: là tập tin chỉ lưu trữ thuần túy văn bản, trong đó các kí tự được biểu diễn bằng mã ASCII của nó, người dùng có thể đọc được. Tính chất: § Dễ truy xuất và xử lí § Độ bảo mật kém § Tốc độ truy xuất kém § Kích thước lớn. - Vd: Lưu số nguyên 12345 ở dạng binary (2 byte) và dạng chuỗi (5 byte). Các dạng thường gặp: § Tập tin cấu hình: *.INI, *.CFG § *.TXT, *.HTML, *.XML Ø Tập tin nhị phân: là tập tin chứa dữ liệu mà có ít nhất một vài chuỗi bit không thể biểu diễn ở dạng văn bản trơn, do đó tập tin này chỉ có máy đọc được còn người dùng không đọc được. Tính chất: § Truy xuất và xử lí phức tạp hơn § Tốc độ truy xuất nhanh § Tính bảo mật cao hơn Các dạng thường gặp: § Các tập tin có cấu trúc tự định nghĩa § *.DOC, *XLS, *PDF, *PPT § *.JPG, *.PCX, *.BMP ,*.TIF § *.MP3, *.W A V , *.A VI,… GVHDTH: Nguyễn Ngọc Thảo
  2. 2. Một số hàm xử lí chung cho cả hai dạng tập tin (xem MSDN) Tên hàm Chức năng fopen Mở tập tin theo kiểu văn bản hoặc nhị phân fclose Đóng tập tin fcloseall Đóng tất cả các tập tin fflush Làm sạch vùng đệm của một tập tin đang mở fflushall Làm sạch vùng đệm của tất cả các tập tin đang mở remove/unlink Xóa tập tin 3. Một số hàm xử lí dùng cho tập tin văn bản (xem MSDN) Tên hàm Chức năng fopen Mở tập tin theo kiểu văn bản hoặc nhị phân fclose Đóng tập tin fcloseall Đóng tất cả các tập tin fprintf Ghi giá trị dạng text lên tập tin fscanf Đọc giá trị dạng text từ tập tin fflush Làm sạch vùng đệm của một tập tin đang mở fflushall Làm sạch vùng đệm của tất cả các tập tin đang mở remove/unlink Xóa tập tin putc/fputc Ghi lên tập tin một kí tự (sử dụng trong tập tin văn bản hoặc nhị phân có khác biệt) getc/fgetc Đọc từ tập tin một kí tự (sử dụng trong tập tin văn bản hoặc nhị phân có khác biệt) 4. Một số hàm xử lí dùng cho tập tin nhị phân (xem MSDN) Tên hàm Chức năng putw Ghi một số nguyên lên tập tin getw Đọc một số nguyên từ tập tin GVHDTH: Nguyễn Ngọc Thảo
  3. fwrite Ghi các mẫu tin (có cấu trúc định trước) lên tập tin fread Đọc các mẫu tin (có cấu trúc định trước) từ tập tin fseek Di chuyển con trỏ chỉ vị đến vị trí mong muốn ftell Cho biết vị trí hiện tại của con trỏ chỉ vị 5. Các ví dụ về đọc/ghi tập tin văn bản và nhị phân Ghi tập tin văn bản #include void main() { int a[10] = {10,9,8,7,6,5,4,3,2,1}; FILE *f = fopen("number_text.txt", "wt"); for (int i = 0; i < 10; i++) { printf("%3d", a[i]); fprintf(f,"%d\n",a[i]); } fclose(f); } Đọc tập tin văn bản #include void main() { int a; FILE *f = fopen("number_text.txt", "rt"); // mở tập tin để đọc dạng text while (!feof(f)) // kiểm tra đến cuối tập tin chưa { fscanf(f,"%d",&a); // đọc dữ liệu dạng text vào biến a printf("%3d", a); } fclose(f); // đóng tập tin sau khi làm xong } Ghi tập tin nhị phân #include typedef struct { char mssv[10]; char name[30]; }SV; GVHDTH: Nguyễn Ngọc Thảo
  4. void main() { int i; SV arr[5]; FILE *f = fopen("number_binary.bin", "wb"); for (i = 0; i < 5; i++){ printf("Nhap MSSV: "); gets(arr[i].mssv); printf("Nhap ten: "); gets(arr[i].name); } for (i = 0; i < 5; i++) fwrite(&arr[i], sizeof(SV), 1, f); fclose(f); } Đọc tập tin nhị phân #include typedef struct { char mssv[10]; char name[30]; }SV; void main() { int i; SV arr[5]; FILE *f = fopen("number_binary.bin", "rb"); for (i = 0; i < 5; i++) { fread(&arr[i], sizeof(SV), 1, f); printf("MSSV: %s\nHo ten: %s\n\n", arr[i].mssv, arr[i].name); } fclose(f); } GVHDTH: Nguyễn Ngọc Thảo
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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