labwindows中char tmp[300];删除txt文件中对应tmp的内容
时间: 2024-03-16 20:42:26 浏览: 125
要删除txt文件中对应`tmp`的内容,可以按照以下步骤进行:
1. 打开txt文件,读取每一行数据。
2. 对于每一行数据,将`tmp`字符串与该行数据进行比较,如果匹配,则将该行数据从txt文件中删除。
3. 将修改后的数据重新写入txt文件中,原来的txt文件将被覆盖。
可以使用以下代码实现:
```c
#include <stdio.h>
#include <string.h>
int main()
{
FILE *fp1, *fp2;
char tmp[300];
char line[300];
// 打开原始的txt文件和临时文件
fp1 = fopen("original.txt", "r");
fp2 = fopen("temp.txt", "w");
// 读取每一行数据并进行匹配
while (fgets(line, sizeof(line), fp1) != NULL)
{
// 如果该行数据中包含tmp字符串,则跳过该行数据
if (strstr(line, tmp) != NULL)
{
continue;
}
// 否则将该行数据写入临时文件
fputs(line, fp2);
}
// 关闭文件
fclose(fp1);
fclose(fp2);
// 删除原始txt文件
remove("original.txt");
// 将临时文件重命名为原始txt文件
rename("temp.txt", "original.txt");
return 0;
}
```
在上述代码中,`original.txt`是原始的txt文件名,`temp.txt`是临时文件名,`tmp`是要删除的字符串,可以根据实际情况进行修改。在程序执行完毕后,原始的txt文件中与`tmp`字符串匹配的数据将被删除。
阅读全文