Để sử dụng đoạn code phía dưới ta chỉ cần copy dán vào file .cpp trong visual hoặc tải luôn file .cpp về.
1. Nhập/xuat file số nguyên .txt
#include "NguyenLeDangKhoa.h"
//Nhập 1 dòng từ FILE
void nhapSoNguyen(FILE* f, int& x) {
fscanf(f, "\n%d", &x);
}
// Nhập toàn bộ FILE TXT
void nhapFile_songuyen(int s[], int& n, char* fileName) {
FILE* f = fopen(fileName, "rt");
fscanf(f, "%d", &n);
for (int i = 0; i < n; i++){
nhapSoNguyen(f, s[i]);
}
fclose(f);
}
//Xuất FILE TXT
void xuatArraySoNguyen(int s[], int n) {
for (int i = 0; i < n; i++){
printf("%d ", s[i]);
}
}
//Xuất 1 dòng từ FILE
void xuatSoNguyen(FILE* f, int x) {
fprintf(f, "%d ", x);
}
// Nhập toàn bộ FILE TXT
void xuatFileSoNguyen(int s[], int n, char* fileNameEx) {
FILE* f = fopen(fileNameEx, "wt");
for (int i = 0; i < n; i++){
xuatSoNguyen(f, s[i]);
}
fclose(f);
}
int main() {
int s[100];
char soNguyen[20] = "data.txt";
char xuatFileSn[20] = "soNguyen.txt";
int n;
nhapFile_songuyen(s, n, soNguyen);
xuatFileSoNguyen(s, n, xuatFileSn);
xuatArraySoNguyen(s, n);
}
#include "NguyenLeDangKhoa.h"
// Cấu trúc user
struct user{
char name[40]; // Tên
int year; // Năm sinh
};
//Nhập 1 dòng từ FILE
void nhapUser(FILE* f, user& s) {
fscanf(f, "\n%[^,], %d", &s.name, &s.year);
}
// Nhập toàn bộ FILE TXT
void nhapDanhSachUser(user s[], int& n, char* fileName) {
FILE* f = fopen(fileName, "rt");
fscanf(f, "%d", &n);
for (int i = 0; i < n; i++){
nhapUser(f, s[i]);
}
fclose(f);
}
//Xuất FILE TXT
void xuatArrayUser(user s[], int n) {
for (int i = 0; i < n; i++){
printf("%s\t%d\n", s[i].name, s[i].year);
}
}
//Xuất 1 dòng từ FILE
void xuatUser(FILE* f, user s) {
fprintf(f, "%s %d\n", s.name, s.year);
}
// Nhập toàn bộ FILE TXT
void xuatFileDanhSachUser(user s[], int n, char* fileNameEx) {
FILE* f = fopen(fileNameEx, "wt");
for (int i = 0; i < n; i++){
xuatUser(f, s[i]);
}
fclose(f);
}
int main() {
user s[100];
char dataUser[20] = "data.txt";
char xuatFileUser[20] = "ds.txt";
int n;
nhapDanhSachUser(s, n, dataUser);
xuatFileDanhSachUser(s, n, xuatFileUser);
xuatArrayUser(s, n);
}
0 Nhận xét