Scala-file-io
提供:Dev Guides
Scala-ファイルI/O
Scalaは任意のJavaオブジェクトを使用するために開かれており、 java.io.File はScalaプログラミングでファイルの読み取りおよび書き込みに使用できるオブジェクトの1つです。
以下は、ファイルに書き込むためのプログラム例です。
例
import java.io._
object Demo {
def main(args: Array[String]) {
val writer = new PrintWriter(new File("test.txt" ))
writer.write("Hello Scala")
writer.close()
}
}
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。
コマンド
\>scalac Demo.scala
\>scala Demo
プログラムが置かれている現在のディレクトリに Demo.txt という名前のファイルを作成します。 以下はそのファイルの内容です。
出力
Hello Scala
コマンドラインから行を読む
画面からユーザー入力を読み取って、さらに処理を進める必要がある場合があります。 次のサンプルプログラムは、コマンドラインから入力を読み取る方法を示しています。
例
object Demo {
def main(args: Array[String]) {
print("Please enter your input : " )
val line = Console.readLine
println("Thanks, you just typed: " + line)
}
}
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。
コマンド
\>scalac Demo.scala
\>scala Demo
出力
Please enter your input : Scala is great
Thanks, you just typed: Scala is great
ファイルコンテンツの読み取り
ファイルからの読み取りは本当に簡単です。 Scalaの Source クラスとそのコンパニオンオブジェクトを使用して、ファイルを読み取ることができます。 以下は、以前に作成した "Demo.txt" ファイルから読み取る方法を示す例です。
例
import scala.io.Source
object Demo {
def main(args: Array[String]) {
println("Following is the content read:" )
Source.fromFile("Demo.txt" ).foreach {
print
}
}
}
上記のプログラムを Demo.scala に保存します。 このプログラムをコンパイルして実行するには、次のコマンドを使用します。
コマンド
\>scalac Demo.scala
\>scala Demo
出力
Following is the content read:
Hello Scala