1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng lập trình cơ bản bài 8 chu thị hường

28 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài giảng lập trình cơ bản bài 8 chu thị hường
Tác giả Chu Thị Hường
Trường học Khoa Công Nghệ Thông Tin, Đại Học Quốc Gia Hà Nội
Chuyên ngành Lập trình cơ bản
Thể loại Bài giảng
Thành phố Hà Nội
Định dạng
Số trang 28
Dung lượng 1,5 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Giới thiệu Biến và con trỏ tập tin Các thao tác trên tập tin Truy cập tập tin văn bản NỘI DUNG Truy cập tập tin văn bản Truy cập tập tin nhị phân... Kiểu tập tin: Dữ liệu lưu trữ th

Trang 1

LẬP TRÌNH CƠ BẢN

KIỂU TẬP TIN (FILE)

LẬP TRÌNH CƠ BẢN

Trang 2

 Giới thiệu

 Biến và con trỏ tập tin

 Các thao tác trên tập tin

 Truy cập tập tin văn bản

NỘI DUNG

 Truy cập tập tin văn bản

 Truy cập tập tin nhị phân

Trang 3

 Kiểu tập tin: Dữ liệu lưu trữ thành một file

trên hệ thống

 Các kiểu tập tin: 3 kiểu

 Tập tin văn bản (Text File)

GIỚI THIỆU

 Tập tin định kiểu (Typed File)

 Tập tin không định kiểu (Untyped File)

Trang 4

 Biến tập tin: là một biến thuộc kiểu dữ liệu

tập tin dùng để đại diện cho một tập tin.

 Con trỏ tập tin:

điểm, sẽ có một vị trí của tập tin mà tại đó việc

BIẾN VÀ CON TRỎ TẬP TIN

điểm, sẽ có một vị trí của tập tin mà tại đó việc

đọc/ghi thông tin sẽ xảy ra

đó và đặt tên nó là con trỏ tập tin

thêm một phần tử về phía cuối tập tin Sau phần tử

dữ liệu cuối cùng của tập tin là dấu kết thúc tập tin

Trang 5

CÁC THAO TÁC TRÊN TẬP TIN

xử lý dữ Khai báo

biến tập tin

1 Mở tập tin

bằng hàm fopen()

2

xử lý dữ liệu của tập tin bằng các hàm đọc/ghi dữ liệu

3 Đóng tập tin bằng

hàm fclose()

4

Trang 6

 Khai báo biến tập tin

Trang 7

 Mở tập tin

 Cú pháp:

FILE *fopen(char *Path, const char *Mode)

 Path: chuỗi chỉ đường dẫn đến tập tin trên đĩa

CÁC THAO TÁC TRÊN TẬP TIN

 Type: chuỗi xác định cách thức mà tập tin sẽ mở

Các giá trị có thể của Mode:

Trang 8

 Mở tập tin

CÁC THAO TÁC TRÊN TẬP TIN

Trang 9

 Mở tập tin

CÁC THAO TÁC TRÊN TẬP TIN

Trang 10

/* Các câu lệnh để thao tác với tập tin*/

/* Đóng tập tin*/

}

Trang 11

 Đóng tập tin

 Cú pháp:

int fclose(FILE *f):

=0 báo rằng việc đóng tập tin thành công

=EOF nếu có xuất hiện lỗi

CÁC THAO TÁC TRÊN TẬP TIN

=EOF nếu có xuất hiện lỗi

int fcloseall():

=tổng số các tập tin được đóng lại

= EOF Nếu không thành công

Trang 12

 Kiểm tra đến cuối tập tin hay chưa?

 Cú pháp: int feof(FILE *f)

= EOF nếu cuối tập tin được chạm tới,

=0 trong trường hợp ngược lại

CÁC THAO TÁC TRÊN TẬP TIN

 Cú pháp: void rewind(FILE *f)

Trang 13

 Ghi dữ liệu lên tập tin văn bản:

 int putc(int c, FILE *f): Ghi một ký tự lên một

tập tin văn bản đang được mở để làm việc.

 int fputs(const char *buffer, FILE *f) : ghi một

chuỗi ký tự chứa trong vùng đệm lên tập tin

TRUY CẬP TẬP TIN VĂN BẢN

chuỗi ký tự chứa trong vùng đệm lên tập tin

văn bản.

 fprintf(FILE *f, const char *format, varexpr):

ghi dữ liệu có định dạng lên tập tin văn bản.

Trang 14

 Đọc dữ liệu từ tập tin văn bản:

 int getc(FILE *f): đọc dữ liệu từ tập tin văn bản

đang được mở để làm việc.

 char *fgets(char *buffer, int n, FILE *f): đọc

một chuỗi ký tự từ tập tin văn bản đang được

TRUY CẬP TẬP TIN VĂN BẢN

một chuỗi ký tự từ tập tin văn bản đang được

mở ra và liên kết với con trỏ f cho đến khi đọc

đủ n ký tự hoặc gặp ký tự xuống dòng ‘\n’ hay

gặp ký tự kết thúc EOF.

 fscanf(FILE *f, const char *format, varlist): đọc

dữ liệu từ tập tin văn bản vào danh sách các

Trang 15

 Ví dụ 1: Viết chương trình ghi chuỗi ký tự lên tập tin văn

bản D:\\THIDU.txt

#include<stdio.h>

#include<conio.h>

int main() {

fputs("Bai 1: Nhap cac so nguyen duong.",f);

fclose(f);

} getch();

return 0;

Trang 16

 Ví dụ 2: Viết chương trình ghi chuỗi ký tự lên tập tin văn

ch=fgetc(f1);

}fcloseall();

}

Trang 17

 Ghi dữ liệu lên tập tin nhị phân - Hàm

fwrite() :

size_t fwrite(const void *ptr,

size_t size, size_t n, FILE *f)

ptr: con trỏ chỉ đến vùng nhớ chứa thông tin cần ghi

TRUY CẬP TẬP TIN NHỊ PHÂN

lên tập tin

Trang 18

 Đọc dữ liệu từ tập tin nhị phân - Hàm

fread() :

size_t fread(const void *ptr, size_t size, size_t n, FILE *f)

ptr: con trỏ chỉ đến vùng nhớ sẽ nhận dữ liệu từ tập tin

TRUY CẬP TẬP TIN NHỊ PHÂN

từ tập tin Giá trị này bằng n hay nhỏ hơn n nếu đã

Trang 19

 Di chuyển con trỏ tập tin - Hàm fseek():

int fseek(FILE *f, long offset, int whence)

trí trước đó Phần tử đầu tiên là vị trí 0

TRUY CẬP TẬP TIN NHỊ PHÂN

trí trước đó Phần tử đầu tiên là vị trí 0

 0 ( SEEK_SET): Vị trí đầu tập tin

 1 (SEEK_CUR): Vị trí hiện tại của con trỏ tập tin

 2 (SEEK_END): Vị trí cuối tập tin

Trang 20

 Bài 1 Thực hiện biên soạn và chạy thử nghiệm Ví dụ 1

Trang 22

 Bài 3: Thực hiện biên soạn và chạy thử nghiệm chương

trình: Mỗi sinh viên cần quản lý ít nhất 2 thông tin: mã

sinh viên và họ tên Viết chương trình cho phép lựa chọn

các chức năng: nhập danh sách sinh viên từ bàn phím rồi

ghi lên tập tin SinhVien.dat, đọc dữ liệu từ tập tin

SinhVien.dat rồi hiển thị danh sách lên màn hình, tìm

BÀI TẬP THỰC HÀNH

SinhVien.dat rồi hiển thị danh sách lên màn hình, tìm

kiếm họ tên của một sinh viên nào đó dựa vào mã sinh

viên nhập từ bàn phím

Trang 24

void WriteFile(char *FileName)

Trang 25

void ReadFile(char *FileName)

Trang 26

void Search(char *FileName)

Trang 28

 Bài 4: Viết chương trình giải và biện luận Phương trình

bậc hai và ghi kết quả vào file

Bài 5 Viết chương trình nhập vào một dãy n số thực a[0],

a[1], , a[n-1], sắp xếp dãy số theo thứ tự từ lớn đến nhỏ

Ghi dãy số sau khi sắp xếp vào file

BÀI TẬP THỰC HÀNH

Ngày đăng: 21/07/2023, 16:55

🧩 Sản phẩm bạn có thể quan tâm