2012-11-11 23 views

回答

6

除了FileURL您還可以提供InputStreamProcessBuilder

有多種方法可以將String轉換爲InputStream。在下面我使用ByteArrayInputStreamString.getBytes

作爲一個例子,我將運行好老cat與輸入設置爲inputString的內容。

scala> import java.io.ByteArrayInputStream 
import java.io.ByteArrayInputStream 

scala> import scala.sys.process._ 
import scala.sys.process._ 

scala> val cmd = List("cat") 
cmd: List[java.lang.String] = List(cat) 

scala> val inputString = "hello\nworld" 
inputString: java.lang.String = 
hello 
world 

scala> val is = new ByteArrayInputStream(inputString.getBytes("UTF-8")) 
is: java.io.ByteArrayInputStream = [email protected] 

scala> val out = (cmd #< is).lines_! 
out: Stream[String] = Stream(hello, ?) 

scala> out.foreach(println) 
hello 
world 
相關問題