GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu převést ukazatel na soubor ( FILE* fp ) na deskriptor souboru (int fd)?

I když fileno(FILE *) může vrátit deskriptor souboru, buďte VELMI opatrní, abyste nevynechali vyrovnávací paměť stdio. Pokud existují data ve vyrovnávací paměti (buď čtení nebo zápis), čtení/zápis z deskriptoru souboru vám může poskytnout neočekávané výsledky.

Chcete-li odpovědět na jednu z vedlejších otázek, chcete-li převést deskriptor souboru na ukazatel FILE, použijte fdopen(3)


Správná funkce je int fileno(FILE *stream) . Lze jej nalézt v <stdio.h> , a je standardem POSIX, ale ne standardním C.


Linux
  1. Jak převést PPK na soubor PEM pomocí příkazu

  2. Jak fungují limity linuxových deskriptorů?

  3. Jak mohu vytvořit soubor v každé složce?

  1. Jak převést řetězec na celé číslo v UNIXu

  2. Jak převést ISO8859-15 na UTF8?

  3. Jak převést data souboru na obyčejný hex?

  1. Jak převést soubory do kódování UTF-8 v Linuxu

  2. Jak mohu získat binární soubor ze souboru .py

  3. Jak mohu použít sudo ke kontrole, zda soubor existuje?