将N个缓冲区写入文件

时间:2018-05-20 16:05:07

标签: c linux file fwrite

我正在尝试使用fprintf()将字符串写入我的文件中是否有一个函数,我只能将指定数量的字节从我的字符串写入文件 示例:“Hello_world”如果n为5,我只想将“Hello”写入我的文件

1 个答案:

答案 0 :(得分:1)

如果您只想使用fprintf,可以创建一个临时缓冲区,直到需要复制的位置。

char s[20] = "Hello World", temp[20];
int n = 5;
strncpy(temp, s, n);

然后继续使用tempfprintf()写入文件。

结合Yunnosch提出的观点,如果允许修改原始字符串,s[n] = '\0';会更有时间效率。另请参阅user3121023关于精度说明符的注释。