En mi clase tengo FILE* ascii_file;
miembro de datos, que siempre se inicializa a través del constructor de clase. ¿Cómo puedo obtener la ruta completa de asci_file
? No quiero almacenar más información sobre el archivo, espero ascii_file
, y quiero que funcione en Windows, Linux y Solaris.¿Cómo obtener fileName que tenga FILE *?
5
A
Respuesta
4
Esta tarea va a requerir código no portátil.
En Windows puede convertir FILE*
en el descriptor de archivo CRT usando _fileno, y luego convertir a un controlador del sistema operativo usando _get_osfhandle.
A continuación, puede obtener el nombre de archivo como se muestra here (utilizando la asignación de archivos).
La obtención de un nombre de archivo de un archivo Handle
4
Aquí es una solución para Linux:
Cuestiones relacionadas
- 1. ALTER DATABASE/ADD FILE/VARIABLE FILENAME?
- 2. django filefield return filename filename solo en la plantilla
- 3. Filesystem filename escape? C#
- 4. Codeigniter "file_exists ($ filename)"
- 5. ¿Cómo hacer que JOptionPane.showConfirmDialog no tenga seleccionado por defecto?
- 6. Diferencia entre "git checkout <filename>" y "git checkout - - <filename>"
- 7. Proceso de suspensión iniciado con System.Diagnostic.Process.Start ("FileName")
- 8. ¿Deberíamos desinfectar $ _FILES ['filename'] ['name']?
- 9. ffmpeg filename formato de salida
- 10. fileName o nombre de archivo?
- 11. ¿Qué regla desea que tenga FxCop/Gendarme?
- 12. ¿Cómo puede un FileInputStream obtener el contenido de File?
- 13. ¿Cómo obtener una secuencia FILE * desde un descriptor de archivo?
- 14. ¿Cuál es la diferencia entre "git whatchanged - filename" y "git rev-list - filename"
- 15. ¿Es necesario que SqlTransaction tenga Dispose llamado?
- 16. Formatee una cadena que tenga llaves adicionales
- 17. ¿Cómo puedo crear un círculo que tenga un número?
- 18. ¿Cómo instalar un WSP que tenga ensamblajes dependientes?
- 19. ¿Cómo podemos verificar que la tabla tenga índice o no?
- 20. Backbone.js - Cómo crear una colección que tenga propiedades enlazables
- 21. ¿Cómo hago que una clase tenga prioridad sobre una identificación?
- 22. Cómo hacer que fitBounds tenga en cuenta los controles personalizados
- 23. ¿Cómo hacer que una aplicación .NET tenga "gran dirección consciente"?
- 24. ¿Cómo hacer para que una cadena tenga que comenzar con una letra mayúscula con JavaScript?
- 25. ¿Pregunta en MSSQL que devuelve .mdf y .ldf filename/location para una base de datos específica?
- 26. ¿Puedo hacer que TComboBoxEx tenga la misma altura que TComboBox?
- 27. ¿Cómo puedo separar diferentes tipos de pruebas de Perl para que no tenga que ejecutarlas todas?
- 28. ¿Cómo hacer que <input type = "file" /> editable?
- 29. Las llamadas bloquean hasta que getFoo() tenga un valor listo?
- 30. return csv file as recordset
algún motivo que no se puede añadir un parámetro de nombre de archivo a la ctor? –
posible duplicado de [Obtención de nombre de archivo del descriptor de archivo en C] (http://stackoverflow.com/questions/1188757/getting-filename-from-file-descriptor-in-c) – Svisstack
¿Igual que esta pregunta? http://stackoverflow.com/questions/831004/determining-the-opened-filename-from-a-file – mkb