#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<sys/types.h>
struct Message
{
char name[10];
char age;
};
int main(void)
{
struct Message node = {"祥子",'1' };
struct Message noderead;
FILE *fp = fopen("./file1.txt", "r+");
char ch;
//讀出單個字符
ch = fgetc(fp);
//寫入單個字符
fputc('m', fp);
//讀出字符串 ,fgets()函數讀到'\n'就停止,而不管是否達到數目要求。同時在讀取字符串的最后加上'\0'。也就是讀8位,再補\0
//在讀出n-1個字符之前,如遇到了換行符或eof,則讀出結束. feof(file*)查看文件指針是否到文件的結尾,是則返回.
char buf[128];
while (!feof(fp))
{
fgets(buf, 100, fp);
printf("%s\n", buf);
}
//寫入字符串,fp在哪里就寫入哪里,將文件指針移到文件開頭函數 fseek(file*)
//fseek(fp, 0, seek_set);
char arr[20] = "\n hello world! \n";
fputs(arr, fp);
fflush(fp);
//二進制塊寫入
fwrite(&node, sizeof(struct Message), 1, fp);
fflush(fp);
//二進制塊讀出
fseek(fp,-sizeof(struct Message) , SEEK_END);
fread(&noderead, sizeof(struct Message), 1, fp);
printf("name=%s,age=%c\n", noderead.name, noderead.age);
fclose(fp);
system("pause");
return 0;
}
