どのようにしてC言語でテキストファイルの内容を変更できますか?
C言語によるテキストファイル上書き修正の方法は以下の通りです。
- fopen
FILE *file = fopen("file.txt", "r+");
if (file == NULL) {
printf("无法打开文件!\n");
return 1;
}
- fseek
- ftell
int offset = 5; // 假设要修改的位置在文件的第6个字符后面
fseek(file, offset, SEEK_SET);
- 文字をファイルに出力する
int ch;
while ((ch = fgetc(file)) != EOF) {
// 修改字符
// 例如将小写字母转换为大写字母
if (ch >= 'a' && ch <= 'z') {
ch = ch - 32;
}
// 写入修改后的字符
fseek(file, -1, SEEK_CUR); // 将文件指针退回到当前位置
fputc(ch, file);
}
- fclose()
fclose(file);
Native Japanese paraphrase: 以下に完全なサンプルコードを示します。
#include <stdio.h>
int main() {
FILE *file = fopen("file.txt", "r+");
if (file == NULL) {
printf("无法打开文件!\n");
return 1;
}
int offset = 5;
fseek(file, offset, SEEK_SET);
int ch;
while ((ch = fgetc(file)) != EOF) {
if (ch >= 'a' && ch <= 'z') {
ch = ch - 32;
}
fseek(file, -1, SEEK_CUR);
fputc(ch, file);
}
fclose(file);
return 0;
}
ファイル内容を変更する前に、ファイルの存在と読み書き権限を確認してください。