2013-07-17 47 views
2

如何在scala中創建文件和文件夾並寫入它們?我明白它是如何在其他語言中起作用的,但Scala有點複雜:/製作一個文件夾/文件並在scala中寫入它們?

這與其他問題不同,因爲它也會詢問如何在Scala中創建目錄和文件。

+6

你知道如何在Java中做到這一點嗎?從那裏不應該是一個很大的延伸。 –

+0

在Java中不是mkdir嗎? – vsingal5

回答

6

Paul Phillips剛剛在ML上提到了括號,「我寫了一個庫來做一堆java.nio.file.Path的包裝」,所以你應該等待看看他發現了什麼。

在此期間,他以前在java.io工作已經徘徊就像一個不安分的精神,但現在困擾:

scala> import reflect.io._ 
import reflect.io._ 

scala> val f = File("my-test.txt") 
f: scala.reflect.io.File = my-test.txt 

scala> f writeAll ("hello", ",", " ", "world", "\n") 

scala> :q 
[email protected]:~/tmp$ cat my-test.txt 
hello, world 

還有用於PathDirectory抽象。

scala> val d = Directory(".") 
d: scala.reflect.io.Directory = . 

scala> d.list 
res0: Iterator[scala.reflect.io.Path] = non-empty iterator 

scala> d.deepList() 
res2: Iterator[scala.reflect.io.Path] = non-empty iterator 

scala> d.deepFiles.toList 
res4: List[scala.reflect.io.File] = List(./mkarray.scala, ./for29.scala, ./nofunc-wrapped.scala, ./inlined.scala, ./xmlex.scala, ./pet.scala, ./lookup.scala, ./CompilerTool.scala, ./badvargs.scala, ./tz0.scala, ./discontinuations.jar, ./serious.scala, ./badjunk.scala, ./version.scala, ./shapeless_2.11.jar, ./callbacks.scala, ./delayed.scala, ./privctor0.scala, ./nestedtags.scala, ./hw-repl.scala, ./schema-one.txt, ./tstest.scala, ./badimp.scala, ./matchprim.scala, ./sxemata-all.txt, ./arrow.scala, ./continuations2.jar, ./inliner.scala, ./oneq.scala, ./impmag.scala, ./enumuser.scala, ./auto.save, ./xmlregex.scala, ./strtyp.scala, ./orelse.scala, ./scalac-plugin.xml, ./futuremap.scala, ./applied.save, ./looker.scala, ./pat1, ./sounds.scala, ./shapeless_2.10.jar, ./funkstr.scala, ./stupid.... 

scala> val p = Path(".") 
p: scala.reflect.io.Path = . 

scala> val f = p/"mkarray.scala" 
f: scala.reflect.io.Path = ./mkarray.scala 
相關問題