gpt4 book ai didi

c - 在 C 中将文件内容打印到标准输出低级 I/O

转载 作者:行者123 更新时间:2023-12-01 01:24:25 25 4
gpt4 key购买 nike

我将如何仅使用低级 I/O 函数打印我附加到的文件的内容?

我得到的最接近的是打印我用来附加的文本示例:

file1.txt = dog
file2.txt = cat

我要打印 file2.txt,现在是“catdog”。我该怎么做?

如前所述,我只能打印“dog”。我也成功地附加了文件。我知道这可能是非常简单的解决方案,但我已经挠头好几个小时了。

我的代码

while (1) {
if ((bufchar = read(fdin1, buf, sizeof(buf))) > 0) {
bp = buf; // Pointer to next byte to write.
while (bufchar > 0) {
if ((wrchar = write(fdin2, bp, bufchar)) < 0)
perror("Write failed");
bufchar -= wrchar; // Update.
bp += wrchar;
}
}
else if (bufchar == 0) { // EOF reached.
break;
}
else
perror("Read failed");
}

最佳答案

请注意,如果您要附加到 file2.txt,那么它将是“catdog”,而不是相反。如果您只能让狗写出来,请实际进入文件以确保您实际上是在追加文件,而不是简单地覆盖文件。

这里是一些关于低级文件 I/O 细节的读物。阅读顶部的两个链接,了解打开和关闭文件以及原始 I/O 操作。没有看到你的任何代码,很难帮助你,尽管你可能没有正确关闭文件,所以你附加的行没有保存......

关于c - 在 C 中将文件内容打印到标准输出低级 I/O,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33272461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com