我有这个哈希:@infodata[:titles] = Array.new([])
。我正在存储一些值,然后我正在尝试获取值。
if name == 'title'
Hash[@attrs]['xml:lang']
@infodata[:titles] << @content
@content = nil
end
这就是“机器”里面的样子
:titles => [
[0] "Arkivvetenskap",
[1] "Archival science"]
然后在我的代码的第二部分中,我保存为CSV,如下所示:
def end_document
CSV.open("infodata.csv", "wb") do |csv|
csv << @infodata.values
end
end
我得到的输出是:
avancerad,Ingen examen,uh,ArkivvetenskapArchival science,HIA80D,10.300,uoh,"Arkivvetenskap rör villkoren för befintliga arkiv och modern arkivbildning med fokus på arkivarieyrkets arbetsuppgifter: bevara, tillgängliggöra och styra information. Under ett år behandlas bl a informations- och dokumenthantering, arkivredovisning, gallring, lagstiftning och arkivteori. I kursen ingår praktik, där man under handledning får arbeta med olika arkivarieuppgifter.",statlig,60
我想要的输出是:
avancerad,Ingen examen,uh,Arkivvetenskap, Archival science,HIA80D,10.300,uoh,"Arkivvetenskap rör villkoren för befintliga arkiv och modern arkivbildning med fokus på arkivarieyrkets arbetsuppgifter: bevara, tillgängliggöra och styra information. Under ett år behandlas bl a informations- och dokumenthantering, arkivredovisning, gallring, lagstiftning och arkivteori. I kursen ingår praktik, där man under handledning får arbeta med olika arkivarieuppgifter.",statlig,60
如何分隔两个数组值。 如果您想查看孔代码:https://gist.github.com/2328752
答案 0 :(得分:0)
Ewwwwww ... @infodata[:titles][index]
?
如果你想要一个例子:
> @infodata[:titles] = %w(abba baba)
=> ["abba", "baba"]
> @infodata[:titles][0]
=> "abba"
> @infodata[:titles][1]
=> "baba"
> @infodata[:titles][0..1]
=> ["abba", "baba"]
答案 1 :(得分:0)
如果你有一个哈希数组,你想存储它或输出..或其他什么。你可以展平它,这意味着它返回一个新的数组,这个数组是这个哈希的一维展平。也就是说,对于作为数组的每个键或值,将其元素提取到新数组中。
def end_document
CSV.open("infodata.csv", "wb") do |csv|
csv << @infodata.values.flatten
end
end