使用C语言标准IO方式将打印信息指定追加输出到一个文件的代码
时间: 2024-05-15 22:17:13 浏览: 98
这是一个可以实现将打印信息追加输出到指定文件的C语言代码示例:
```c
#include <stdio.h>
int main() {
FILE *fp;
char str[] = "Hello World!";
fp = fopen("output.txt", "a"); // 打开文件并以追加方式写入
if(fp == NULL) {
printf("Error opening file!\n");
return 1;
}
fprintf(fp, "%s\n", str); // 将信息写入文件
fclose(fp); // 关闭文件
printf("Information has been successfully appended to the file.\n");
return 0;
}
```
当然,你也可以使用其他方式实现相同的功能。
相关问题
c语言实现使用文件IO而不是标准IO实现“每隔1秒向文件1.txt写入当前系统时间,行号递增”
如果您想使用文件I/O而不是标准I/O来实现每隔1秒向文件1.txt写入当前系统时间并递增行号,可以使用以下C代码:
```c
#include <stdio.h>
#include <time.h>
#include <unistd.h>
#include <fcntl.h>
int main() {
int fileDescriptor;
int lineNum = 1;
while (1) {
// 获取当前系统时间
time_t currentTime = time(NULL);
struct tm *timeInfo = localtime(¤tTime);
char timeString[80];
strftime(timeString, sizeof(timeString), "%Y-%m-%d %H:%M:%S", timeInfo);
// 打开文件,以追加模式写入
fileDescriptor = open("1.txt", O_WRONLY | O_CREAT | O_APPEND, 0644);
if (fileDescriptor == -1) {
printf("无法打开文件.\n");
return 1;
}
// 写入时间和行号
dprintf(fileDescriptor, "%d: %s\n", lineNum, timeString);
// 关闭文件
close(fileDescriptor);
// 行号递增
lineNum++;
// 等待1秒
sleep(1);
}
return 0;
}
```
这段代码使用了`open()`函数来打开文件,并使用了`O_WRONLY`、`O_CREAT`和`O_APPEND`标志来指定写入模式。然后,它使用`dprintf()`函数将时间和行号写入文件。之后,关闭文件描述符并递增行号。最后,使用`sleep()`函数等待1秒,然后进入下一次循环。
同样地,这段代码也是以无限循环的方式运行,您可以通过按下 `Ctrl + C` 来停止程序的运行。
使用c语言,使用文件IO实现“每隔1秒向文件1.txt写入当前系统时间,行号递增”
您可以使用以下C代码来实现每隔1秒向文件1.txt写入当前系统时间,并递增行号:
```c
#include <stdio.h>
#include <time.h>
#include <unistd.h>
int main() {
FILE *file;
int lineNum = 1;
while (1) {
// 获取当前系统时间
time_t currentTime = time(NULL);
struct tm *timeInfo = localtime(¤tTime);
char timeString[80];
strftime(timeString, sizeof(timeString), "%Y-%m-%d %H:%M:%S", timeInfo);
// 打开文件,以追加模式写入
file = fopen("1.txt", "a");
if (file == NULL) {
printf("无法打开文件.\n");
return 1;
}
// 写入时间和行号
fprintf(file, "%d: %s\n", lineNum, timeString);
// 关闭文件
fclose(file);
// 行号递增
lineNum++;
// 等待1秒
sleep(1);
}
return 0;
}
```
这段代码使用`time()`函数获取当前系统时间,并使用`localtime()`和`strftime()`函数将时间格式化为字符串。然后,它以追加模式打开文件1.txt,使用`fprintf()`将时间和行号写入文件中。之后,关闭文件并递增行号。最后,使用`sleep()`函数等待1秒,然后进入下一次循环。
请注意,这段代码将以无限循环的方式运行,您可以通过按下 `Ctrl + C` 来停止程序的运行。
阅读全文