libxml SaxParser Problem

F

funkdoobiest

Hi,

i've installed libxml-ruby (0.5.2.0) and want to test the SaxParser.
So I found following example:

#!/usr/bin/env ruby
require 'rubygems'
require 'xml/libxml'
start = Time.now
ARGV.each {|filename|
counts = Hash.new
parser = XML::SaxParser.new
parser.filename = filename
parser.on_start_element {|element_name, _|
if counts[element_name]
counts[element_name] += 1
else
counts[element_name] = 1
end
}
parser.parse

File.open(filename + ".count.csv", "w") {|f|
counts.each {|element_name, count|
f.puts "\"#{element_name}\",#{count}"
}
}
}



but if I start this script, I got following error:

undefined method `on_start_element' for #<XML::SaxParser:0xb7a88858>
(NoMethodError)

but why? a saw a few examples with "on_start_element".

thanks!
 
M

Michael Fellinger

Hi,

i've installed libxml-ruby (0.5.2.0) and want to test the SaxParser.
So I found following example:

#!/usr/bin/env ruby
require 'rubygems'
require 'xml/libxml'
start = Time.now
ARGV.each {|filename|
counts = Hash.new
parser = XML::SaxParser.new
parser.filename = filename
parser.on_start_element {|element_name, _|
if counts[element_name]
counts[element_name] += 1
else
counts[element_name] = 1
end
}
parser.parse

File.open(filename + ".count.csv", "w") {|f|
counts.each {|element_name, count|
f.puts "\"#{element_name}\",#{count}"
}
}
}



but if I start this script, I got following error:

undefined method `on_start_element' for #<XML::SaxParser:0xb7a88858>
(NoMethodError)

but why? a saw a few examples with "on_start_element".

You might have the wrong lib in your mind: http://p.ramaze.net/9 would work
 
F

funkdoobiest

i've installed libxml-ruby (0.5.2.0) and want to test the SaxParser.
So I found following example:
#!/usr/bin/env ruby
require 'rubygems'
require 'xml/libxml'
start = Time.now
ARGV.each {|filename|
counts = Hash.new
parser = XML::SaxParser.new
parser.filename = filename
parser.on_start_element {|element_name, _|
if counts[element_name]
counts[element_name] += 1
else
counts[element_name] = 1
end
}
parser.parse
File.open(filename + ".count.csv", "w") {|f|
counts.each {|element_name, count|
f.puts "\"#{element_name}\",#{count}"
}
}
}
but if I start this script, I got following error:
undefined method `on_start_element' for #<XML::SaxParser:0xb7a88858>
(NoMethodError)
but why? a saw a few examples with "on_start_element".

You might have the wrong lib in your mind:http://p.ramaze.net/9would work

thank you! that works. you saved my day :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,773
Messages
2,569,594
Members
45,120
Latest member
ShelaWalli
Top