메모리 내 파일이있는 경우 Elixir (또는 Erlang)에서 길이를 바이트 단위로 어떻게 찾을 수 있습니까?Elixir/Erlang 메모리 내 파일의 길이를 찾으십니까?
def get_length(fd) do
{:ok, cur} = :file.position(fd, {:cur, 0})
try do
:file.position(fd, {:eof, 0})
after
:file.position(fd, cur)
end
end
사용법 :
{:ok, fd} = :file.open("", [:ram, :read, :write])
:ok = :file.write(fd, "hello")
{:ok, len} = get_length(fd)
이 매우 깨끗하지만은'알고 있어야 : ram_file' 모듈이 공식적으로 OTP에 따라서 대상이 문서화되어 언제든지/제거를 변경 (. 그것은 기본적으로 RAM 파일입니다) 다음은 예입니다. – jwfearn