Vấn đề
Cách đọc một loạt các mục có trong một tệp và hiển thị dữ liệu ở dạng cột hoặc dạng bảng bằng Lập trình C
Giải pháp
Tạo tệp ở chế độ ghi và ghi một số chuỗi thông tin vào tệp và đóng tệp đó lại, mở lại và hiển thị chuỗi dữ liệu trong các cột trên bảng điều khiển.
Chế độ ghi khi mở tệp
FILE *fp; fp =fopen ("sample.txt", "w");
-
Nếu tệp không tồn tại, thì một tệp mới sẽ được tạo.
-
Nếu tệp tồn tại, thì nội dung cũ sẽ bị xóa và nội dung hiện tại sẽ được lưu trữ.
Chế độ đọc khi mở tệp
FILE *fp fp =fopen ("sample.txt", "r");
-
Nếu tệp không tồn tại, thì hàm fopen trả về giá trị NULL.
-
Nếu tệp tồn tại, thì dữ liệu được đọc từ tệp thành công.
Logic được sử dụng để hiển thị dữ liệu trên bảng điều khiển ở dạng bảng là -
while ((ch=getc(fp))!=EOF){ if(ch == ',') printf("\t\t"); else printf("%c",ch); }
Chương trình
#include <stdio.h> #include<ctype.h> #include<stdlib.h> int main(){ char ch; FILE *fp; fp=fopen("std1.txt","w"); printf("enter the text.press cntrl Z:\n"); while((ch = getchar())!=EOF){ putc(ch,fp); } fclose(fp); fp=fopen("std1.txt","r"); printf("text on the file:\n"); while ((ch=getc(fp))!=EOF){ if(ch == ',') printf("\t\t"); else printf("%c",ch); } fclose(fp); return 0; }
Đầu ra
enter the text.press cntrl Z: Name,Item,Price Bhanu,1,23.4 Priya,2,45.6 ^Z text on the file: Name Item Price Bhanu 1 23.4 Priya 2 45.6