dani
1
If I understand you well the script should look like this:
outfile = ARGV.shift
lines = ARGF.readlines
nyomtatvanyazonosito, nev, adoszam, adoazonosito, tol, ig =
lines.slice!(0,6).map {|w| w.chomp.chomp(’;’) }
first_six_data = <<-EOT
‘<?xml version="1.0" encoding="windows-1250"?>’
‘’
‘’#{nyomtatvanyazonosito}’’
‘’
‘’#{nev}’’
‘’#{adoszam}’’
‘’#{adoazonosito}’’
‘’
‘’
‘’#{tol}’’
‘’#{ig}’’
‘’
‘’
‘’
EOT
marked_up_lines = lines.map do |line|
words = line.split
‘’ + words[1] + ‘’ + “\n”
end
File.open(outfile,‘w’) do |file|
file.write marked_up_lines.join
end
But if i run it so in the ouput only the things after the first six
lines appear…
Daniel
dani
2
Dani wrote:
If I understand you well the script should look like this:
outfile = ARGV.shift
lines = ARGF.readlines
nyomtatvanyazonosito, nev, adoszam, adoazonosito, tol, ig =
lines.slice!(0,6).map {|w| w.chomp.chomp(‘;’) }
first_six_data = <<-EOT
‘<?xml version="1.0" encoding="windows-1250"?>’
Why the quotes here? The string is everything between the line following
“<<-EOT” and “EOT”. See
http://www.ruby-doc.org/docs/ruby-doc-bundle/Manual/man-1.4/syntax.html#here_doc
[…]
File.open(outfile,‘w’) do |file|
You forgot to write the variable first_six_data here.
file.write first_six_data
file.write marked_up_lines.join
And here probably you need to write
file.write "</...></...></...>"
end
HTH