私の.rbファイルでxmlSimpleが正しく動作するようになっています。 xmlSimple.xmlIn(filename);
を使用していますが、正しいファイルを見つける際にエラーが発生しているようです。ファイルをビンに移動し、ファイルが存在します。つまり、filename.exists? = true
です。考えられるエラーソースに関するアイデアはありますか?ありがとう!xmlSimple.xmlIn(ファイル)をRubyで使用する
-edit- この情報を追加します。私はRubyのに非常に新しいですし、私の方法や構文が完全に間違っているの良いチャンスがあり、ここに私のコードは.RBファイルである:
require 'xmlsimple'
file_name = 'xmldatatest.xml'
paragraph_str = 0
file = File.open(file_name) # takes XML Data and creates a file of the data
File.open(file_name, "w+") do |f| # open file for update
lines = f.readlines # read into array of lines
lines.each do
|it|
# modify lines
it.gsub!(/\n/, '')
it.gsub!('<p>', '')
it.gsub!('</p>', '')
it.gsub!('\"Paragraph.\"', 'Paragraph')
if ((it.include? ('Paragraph')) == 1)
paragraph_str += 1
end
while paragraph_str > 0 do
initial_value = paragraph_str
if ((paragraph_str == initial_value))
it.gsub!(/Paragraph/, '<p>')
paragraph_str -= 1
else
it.gsub!(/Paragraph/, '</p><p>')
paragraph_str -= 1
end
end
f.print lines # write out modified lines
end
end
File.open(file_name, 'a') {|f| f.puts "</p>" }
ref = XmlSimple.xml_in(file_name)
プログラムの目的から、すべてのエスケープ文字を削除することです元のXMLファイルに置き換えて、<p>
と</p>
タグ内の各「段落#」ノードを置き換えます。その後、ファイルはXmlSimple.Xml_in(filename)
を使用して解析されます。どんな提案や修正も高く評価されています。
サンプルXMLを提供してください。 XMLを読みやすくするためにXMLを前処理する必要はありませんが、あなたが扱っているものを見ずにはわかりません。 [Nokogiri](http://nokogiri.org)は、RubyのXMLパーサとして高く評価されており、使い方が簡単です。私はそれを学ぶことを検討することをお勧めします。 –