读取 JLD 文件



我在读取JLD文件时遇到了这个问题。我已成功创建文件,如下所示:

using JLD, HDF5
    for i in 1:10
    file = jldopen("/MY PATH/mydata.jld", "w")
    write(file, "A", vector[i] for i in 10 )  
    close(file)
    end 

但是当我使用以下说明读取文件时:

file = jldopen("/My PATH/my_tree/mydata.jld", "r") 

对于这第一条指令,它执行正确,但是当我执行以下内容时:

read(file, "A")

我收到此错误:

WARNING: type Base.Generator{Core.Int64,##1#2} not present in workspace; reconstructing
ERROR: MethodError: no method matching julia_type(::Void)
 in _julia_type(::ASCIIString) at /root/.julia/v0.5/JLD/src/JLD.jl:966
 in julia_type(::ASCIIString) at /root/.julia/v0.5/JLD/src/JLD.jl:32
 in jldatatype(::JLD.JldFile, ::HDF5.HDF5Datatype) at /root/.julia/v0.5/JLD/src/jld_types.jl:672
 in reconstruct_type(::JLD.JldFile, ::HDF5.HDF5Datatype, ::ASCIIString) at /root/.julia/v0.5/JLD/src/jld_types.jl:737
 in jldatatype(::JLD.JldFile, ::HDF5.HDF5Datatype) at /root/.julia/v0.5/JLD/src/jld_types.jl:675
 in read(::JLD.JldDataset) at /root/.julia/v0.5/JLD/src/JLD.jl:381
 in read(::JLD.JldFile, ::ASCIIString) at /root/.julia/v0.5/JLD/src/JLD.jl:357
 in eval(::Module, ::Any) at ./boot.jl:237

vector[i] for i in 10创建一个生成器,JLD很乐意为您将其写入文件。你可能想要一个数组,所以用 collect 包装该表达式。

相关内容

  • 没有找到相关文章