2011-09-25 95 views
0

我想打开一个文件进行写入,并且我已经获得了该文件的文件描述符。unix打开文件,用于写入给定的文件描述符

我知道fdopen可以用来写入文件,如下所示:

FILE * fp; 
fp = fdopen(filedes, "a+"); 
fwrite("\n", sizeof(char), 1, fp); 

是否有任何其他方式才达到相同的,即写信给定的文件描述符文件?

感谢

+0

是否打开文件描述符进行写入?如果是这样,那么'写(2)'及其亲属就可以正常工作。如果不是,那么你有一段艰难的时光;你不能轻易地找出与文件描述符相对应的文件名(它甚至可能没有 - 考虑一个管道或套接字)。 –

回答

1

是否有任何其他方式才达到相同的,即写信给定 文件描述符

您可以使用系统调用write(2)直接写入文件。

write(fd, "\n", 1); 
0

你可以写数据的缓冲与write系统调用的文件描述符。