1. Trang chủ
  2. » Công Nghệ Thông Tin

Làm việc với Tập tin potx

32 183 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Làm việc với Tập tin potx
Trường học Trường Phổ Thông Chuyên Hà Nội-Amsterdam
Chuyên ngành Tin học
Thể loại Báo cáo
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 32
Dung lượng 370,34 KB

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

Nội dung

int fprintfFILE *f, const char *format, ..... int fscanfFILE *f, const char *format, ...

Trang 1

28/08/2011

1 GVGD: Tr ng Ph c H i

Làm vi c v i t p tin

Trang 3

D li u l u tr trong t p tin không b m t đi khi

ng ng cung c p ngu n đi n nên có th đ c s

d ng lâu dài

 Có th l u tr d li u v i kích th c l n

T p tin

Trang 5

 Thao tác trên t p tin v n b n là tu n t

Trang 6

28/08/2011

6

6

Phân lo i

T p tin nh phân (binary file)

 Thao tác d li u trên t p tin nh phân là ng u nhiên

Trang 10

chu i k t h p t các chu i đ c cho trong 2 b ng sau

Trang 13

 Gi i phóng bi n tr t p

đ c đóng (đ i v i fcloseall), ng c l i tr v EOF

Trang 16

FILE *f = fopen( "filename" , "?t" );

 ? là thao tác đ c/ghi d li u t ng ng: đ c (r), ghi (w),

thêm (a), r+, w+, a+

Trang 17

 chr: là mã ASCII c a kí t đ c ghi lên t p tin f

 Công d ng: ghi kí t chr lên t p tin f

FILE *f = fopen( "test.txt" , "wt" );

for ( char c = 'A' ; c <= 'Z' ; c++)

fclose(f);

Trang 18

 Công d ng: ghi chu i trong buff lên t p tin f

FILE *f = fopen( "test.txt" , "wt" );

char *s = "Mua xuan em di hai hoa" ;

fputs(s, f);

fclose(f);

Trang 19

int fprintf(FILE *f, const char *format, )

 Công d ng: ghi chu i v i đ nh d ng đ c ch đ nh trong

format lên t p tin

FILE *f = fopen( "test.txt" , "wt" );

char *s = "bao gio cho den thang" ;

int t = 10;

fprintf(f, "%s %d" , s, t);

fclose(f);

Trang 20

28/08/2011

20

20

Ghi d li u lên t p tin v n b n

B ng chu i đ nh d ng cho hàm fprintf ng v i các

Trang 21

FILE *f = fopen( "test.txt" , "rt" );

Trang 22

28/08/2011

22

22

Hàm đ c chu i

 Công d ng: đ c đúng n - 1 kí t ho c cho đ n khi g p kí t

Trang 23

int fscanf(FILE *f, const char *format, )

 Công d ng: đ c d li u và l u vào danh sách bi n theo

đ nh d ng (gi ng fprintf), d li u không ch a kho ng tr ng

FILE *f = fopen( "test.txt" , "rt" );

Trang 25

FILE *f = fopen( "path" , "?b" );

 ? (r, w, a) t ng ng thao tác đ c, ghi, thêm d li u lên

t p tin

T p tin nh phân

Trang 26

fwrite( void *buf, int size, int n, FILE *f)

 Công d ng: ghi block d li u c a buf vào t p tin f

 n: s buf c n ghi

đ c ghi không trùng v i s buf c n ghi ngh a là l i

Ghi d li u vào t p tin nh phân

Trang 27

28/08/2011

27

27

Ghi d li u vào t p tin nh phân

 Ví d minh h a ghi m ng c u trúc nhân viên vào

t p tin data.dat

void WriteFile(NhanVien *nv, int n)

{

FILE *f = fopen( "data.dat" , "wb" );

for ( int i = 0; i < n; i++)

fwrite(&nv[i], sizeof (NhanVien), 1, f);

fclose(f);

}

Trang 28

fread( void *buf, int size, int n, FILE *f)

Trang 29

FILE *f = fopen( "data.dat" , "rb" );

while (fread(&nv[n], sizeof (NhanVien),1, f))

fclose(f);

}

Trang 30

28/08/2011

30

30

Hàm d ch chuy n con tr FILE:

int fseek(FILE *f, long off, int xp)

tr khác 0

Di chuy n con tr t p tin

Trang 31

28/08/2011

31

31

Hàm d ch chuy n con tr FILE:

Di chuy n con tr t p tin

Trang 32

nhân viên th i (tính t 0) đ c l u trong t p tin

void Update( int i, double HeSoMoi)

{

NhanVien nv;

FILE *f = fopen( "data.dat" , "a+b" );

fseek(f, i* sizeof (NhanVien), SEEK_SET);

fread(&nv, sizeof (NhanVien), 1, f);

nv.HeSoLuong = HeSoMoi;

fseek(f, i* sizeof (NhanVien), SEEK_SET);

fwrite(&nv, sizeof (NhanVien), 1, f);

fclose(f);

}

Ngày đăng: 08/08/2014, 04:21

w