你用fopen打开一个文件:
FILE *file=fopen("filename", "r"); // opens a file for reading
if(file) {
// success
}else{
// error
}
如果您将r 替换为w,那么它将被打开以供写入。如果在模式字符串中包含b,它将以二进制而不是文本形式打开,这是默认设置。 (在文本模式下,它会进行一些转换,例如行尾等)如果您使用r+,它将打开它以供读写。如果您使用w+,它将截断文件并打开它进行读写。您也可以使用a 附加到文件中。
要从文件中读取,请使用fread 或fgets:
char buffer[256];
if(fgets(buffer, sizeof(buffer), file)) { // reads a line from the file
// success
}else{
// error
}
if(fread(buffer, sizeof(buffer), 1, file)==1) { // reads 256 bytes from the file
// success
}else{
// error
}
要写入文件,请使用fwrite 或fputs:
if(fputs("Hello, world!", file)==0) { // writes a line to the file
// success
}else{
// error
}
// ---OR---
const char *data="Hello, world!";
if(fwrite(data, sizeof(data), 1, file)==1) { // writes some data to the file
// success
}else{
// error
}
完成文件后,使用fclose 关闭它:
if(fclose(file)==0) {
// success
}else{
// error
}