Ruby:File.read 编码错误:"UTF-8"

Ruby: File.read Error encoding:"UTF-8"

我写了一个程序来转换 xml 文件。 我用以下命令启动它

ruby Skribt.rb example

这是部分代码:

sessionid = ARGV[0].dup
inputfile = "upload/" + sessionid + "_source.xml" # Hochgeladene XML Datei
outputfile = "output/" + sessionid + ".xml"
stringKomplett = File.read(inputfile,encoding: "UTF-8").gsub(/<group.*?type=\"public\".*?\/>/, "")

我收到以下错误,不知道如何解决。

Skript.rb:16: syntax error, unexpected ':', expecting ')'
... File.read(inputfile,encoding: "UTF-8").gsub(/<group.*?type=...
                              ^
Skript.rb:16: syntax error, unexpected ')', expecting $end
...d(inputfile,encoding: "UTF-8").gsub(/<group.*?type=\"public\...
                          ^

希望你能帮我解决这个问题。 预先感谢您的帮助。

问候

看来您使用的是旧 Ruby 版本。试试这个:

File.read(inputfile, :encoding => "UTF-8").gsub(/<group.*?type=\"public\".*?\/>/, "")