From: Mike Pe Date: 2010-07-28T01:47:52+09:00 Subject: Re: REXML Input File Question Robert Klemme wrote: > 2010/7/24 Mike Pe : >>>> puts doc.root.attributes["test"] --> �nil >>> Can you show what exactly you did? >> The issue is that the first line of my input file: >> >> >> >> Causes the file to be read as an "xml application". Basically, I just >> want to be able to use REXML to parse out this xml file, but it does not >> parse properly with this line in the beginning of my input file. >> (otherwise it works fine). > > Please provide the code you are using so others can try this out > themselves. I asked for this already (see above). > >> I tried converting the files using iconv commands from your link, but it >> UTF-16 and UTF-8, the same error occurs, without regard for format. >> >> Why is this line interfering with the parser and how would I fix it? >> Thank you for your help. > > It seems there is no UTF-16 support: > > irb(main):009:0> f=File.open "x", "r:UTF-16" > (irb):9: warning: Unsupported encoding UTF-16 ignored > => # > > So there is no point in trying to import a UTF-16 encoded file in Ruby. > > Kind regards > > robert Hi Robert, As for the code that I am using, I simplified the code in my original post. The first line: doc = REXML::Document.new error Should parse in the XML document and recognize all of the roots, elements, attributes, etc. from the input document. i.e.: puts doc.root.attributes["test"] Should return "yes" because the attribute in the error xml file (see above) is "yes. With the extra line, it puts "nil". (because the parser did not do its job). I tried converting all of the files to UTF-8 and they still did not work. (If you remove the extra line, it does work) I do not think the problem with is in the unicode. Thanks, Mike -- Posted via http://www.ruby-forum.com/.