我们找到一个CSV文件,以此为例
(1)序列化
julia> data=readcsv("C:\\Users\\Administrator\\Desktop\\test\\mydatacsv.csv")
5085x11 Array{Any,2}:
"DLlMI" "2013/1/4 9:00" … 10910.0 7212.0 262130.0 3.0
"DLlMI" "2013/1/4 9:05" 10895.0 13338.0 263986.0 5.0
"DLlMI" "2013/1/4 9:10" 10910.0 15448.0 267388.0 6.0
........
我们的目标是要对data 进行序列化。我们找到一个路径下kkkk.csv(新设的),存放data数据。
julia> open("C:\\Users\\Administrator\\Desktop\\test\\kkkk.csv","a+") do stream
serialize(stream,data)
end
(2)反序列化
julia> resultData = open("C:\\Users\\Administrator\\Desktop\\test\\kkkk.csv","r+") do stream
out =deserialize(stream)
end
5085x11 Array{Any,2}:
"DLlMI" "2013/1/4 9:00" … 10910.0 7212.0 262130.0 3.0
"DLlMI" "2013/1/4 9:05" 10895.0 13338.0 263986.0 5.0
"DLlMI" "2013/1/4 9:10" 10910.0 15448.0 267388.0 6.0
"DLlMI" "2013/1/4 9:15" 10930.0 9082.0 267608.0 5.0
"DLlMI" "2013/1/4 9:20" 10915.0 14902.0 266672.0 5.0
"DLlMI" "2013/1/4 9:25" … 10880.0 9450.0 267786.0 5.0
。。。。。
可以看到,序列化和反序列化已经全部成功!!!
但序列化和反序列的效率并不是很高,一个26万行的数据读取花了大约10秒左右。和读CSV的效率差不多。
对于,我做策略研究而言,如果序列化时间和CSV时间相差不大,就没有什么意义了,还不如直接读CSV算了。