Здравейте, аз преминавам стринг пътека към Groovy Script от Scala, както е показано по-долу, но когато низът съдържа 2 байта символа, форматирането ще бъде изкривено. Как правилно предавате низ на groovy скрипт?
var gse = new GroovyScriptEngine()
var scriptClass = gse.loadScriptByName("script.groovy")
var i = scriptClass.newInstance().asInstanceOf[GroovyObject]
i.setProperty("DIR_HERE", new File(".").getAbsolutePath())
// when the path contains 2 bytes code like "c:/あああああ/bleh",
// the passed string will be garbled and will be like "c:/????????????/bleh"
Отговори:
1 за отговор № 1Ако пиша script.groovy
като:
println DIR_HERE
И после нов файл run.groovy
като:
def gse = new GroovyScriptEngine( "." )
def scriptClass = gse.loadScriptByName("script.groovy")
def i = scriptClass.newInstance()
i.setProperty("DIR_HERE", "c:/あああああ/bleh" )
i.run()
След това, когато тичам:
groovy run.groovy
от командния ред, той отпечатва:
c:/あああああ/bleh