Al usar file:read_file(x)
¿es necesario cerrar el archivo devuelto?Erlang, ¿Es necesario cerrar el archivo aquí?
{ok, File} = file:read_file("maillog.sample"),
file:close(File),
Al usar file:read_file(x)
¿es necesario cerrar el archivo devuelto?Erlang, ¿Es necesario cerrar el archivo aquí?
{ok, File} = file:read_file("maillog.sample"),
file:close(File),
No es un archivo, sino el contenido del archivo que se devuelve. Por lo tanto, no hay archivo para cerrar. Intente cambiar el nombre de la variable de datos o similar que en el código de abajo:
{ok, Data} = file:read_file("maillog.sample"),
de datos tendrá entonces el contenido del archivo "maillog.sample". El archivo de función: archivo_de_lectura/1 abrirá, leerá y cerrará el archivo por usted, todo de una vez.
Wow im tonto, ya que la tupla de retorno es similar a la salida del archivo: abrir (...) Supuse que estaba devolviendo un dispositivo. Gracias – jdc0589
No, no es necesario cerrar los archivos de file:read_file
, y file:consult
.
¿Cómo lo cerraría de todos modos, si ni siquiera tiene el descriptor de archivo a mano?
'File' contiene el contenido del archivo ... – Zed
Para la pregunta correspondiente al usar' file: open/2', vea [esta pregunta] (http://stackoverflow.com/q/28066839/113848) . – legoscia