我想在C中創建一個文件描述符,其值將在代碼中指定。 我有一個整型變量,它指定了要創建的文件描述符的值。例如,我可能需要一個文件描述符,其值爲5,稍後將其與名爲「sample.dat」的文件相關聯。創建文件描述符
Q
創建文件描述符
0
A
回答
4
你需要DUP2()
3
fd = open ("sample.dat", O_RDONLY);
打開文件
dup2 (fd, 5);
和文件描述符fd
複製到文件描述符5
現在你可以做read (5, buffer, BUFF_MAX);
或者也可以使用fd
訪問相同的文件。如果您不需要,您需要明確關閉fd
。
正如@Arkadiy所述,詳情請參閱man dup2
。
+1
'dup'和'dup2'不會關閉舊的文件描述符。 – 2011-05-09 11:22:23
+0
@Chris Lutz:謝謝你指出。我糾正了錯誤。 – phoxis 2011-05-09 11:37:43
相關問題
- 1. fopen是否創建文件描述符?
- 2. 創建備份文件描述符?
- 3. 創建HID描述符
- 4. 創建GNU C文件描述符沒有文件句柄
- 5. 文件描述符飢餓和阻斷文件描述符
- 6. c strcpy文件描述符
- 7. webservice描述符文件
- 8. 關閉文件描述符
- 9. Linux open()文件描述符
- 10. 實現文件描述符
- 11. 文件描述符輪詢
- 12. 寫作文件描述符
- 13. 如何在linux上創建自定義文件描述符
- 14. JAI創建似乎離開文件描述符開放
- 15. 如何在unix中創建阻塞文件描述符?
- 16. 如何在RAML中的描述文件中創建換行符?
- 17. 創建文件描述符替換標準輸入(在選擇())
- 18. 套接字描述符與文件描述符
- 19. 壞文件描述符文件無
- 20. 文件描述符和打開文件
- 21. 文件描述符和套接字文件描述符之間的區別
- 22. 等待可讀文件描述符和可寫文件描述符
- 23. 數據描述符用文字符號(對象創建)
- 24. 在Linux中創建新線程是否重複文件描述符和套接字描述符?
- 25. 創建描述特定值
- 26. 段描述符與門描述符
- 27. SOCKET文件描述
- 28. 錯誤的文件描述符
- 29. C從文件描述符中讀取
- 30. Linux文件描述符日誌
你必須小心。如果'newfd'已經屬於一個文件,它將被關閉!我想你會更好地使用像地圖這樣的東西。 – RedX 2011-05-09 11:14:22