在茱莉亞,我想在文件中寫入一個變量和他的類型以便稍後重用。就像這樣:如何在julia中寫入文件的數據類型
var = Float64(15)
stream = open("foo.dat", "w")
write(stream, typeof(var))
write(stream, var)
close(stream)
stream = open("foo.dat", "r")
typevar = read(stream, DataType)
var = read(stream, typevar)
close(stream)
第三行不起作用:
ERROR: LoadError: MethodError: `write` has no method matching write(::IOStream, ::Type{Float64})
Closest candidates are:
write(::IO, ::Any)
我怎樣才能做到這一點?謝謝:)
你看過JLD包嗎?您可以使用它來存儲完整的Julia對象,其中將包括它們的類型。 –
另外,取決於你想要什麼,甚至可能沒有必要。例如,如果你只是有一個說'Float64'對象的數組,那麼你可以使用'writedlm'將其寫入一個.txt文件,然後'readdlm'來讀取它。'readdlm'將會選擇一個可選的參數指定讀取數據時的類型。 –
謝謝邁克爾:)我看JLD和HDF5包。 writedlm寫文本,但我會寫二進制文件。 – pasto