“Scala 文件 I/O”的版本间差异

本页内容
(创建页面,内容为“{{DISPLAYTITLE:Scala 文件 I/O}}23 = Scala 文件 I/O = Scala 进行文件写操作,直接用的都是 java中 的 I/O 类 ('''java.io.File'''): <sample title="" desc="" lang="scala" hererun="1"> example_start import java.io._ object Test { def main(args: Array[String]) { val writer = new PrintWriter(new File("test.txt" )) writer.write("小白教程") writer.close() } } example_end </sample>…”)
 
Neo讨论 | 贡献
无编辑摘要
 
(未显示同一用户的1个中间版本)
第4行: 第4行:
Scala 进行文件写操作,直接用的都是 java中 的 I/O 类 ('''java.io.File'''):
Scala 进行文件写操作,直接用的都是 java中 的 I/O 类 ('''java.io.File'''):


<sample title="" desc="" lang="scala" hererun="1">  
<sample title="" desc="" lang="scala" hererun="1">
import java.io._
import java.io._


第21行: 第21行:
}
}


  </sample>
</sample>
执行以上代码,会在你的当前目录下生产一个 test.txt 文件,文件内容为&quot;小白教程&quot;:
执行以上代码,会在你的当前目录下生产一个 test.txt 文件,文件内容为&quot;小白教程&quot;:


<sample title="" desc="" lang="scala" hererun="1">
<pre>
$ scalac Test.scala
$ scalac Test.scala
$ scala Test
$ scala Test
$ cat test.txt
$ cat test.txt
小白教程
小白教程
</sample>
</pre>
== 从屏幕上读取用户输入 ==
== 从屏幕上读取用户输入 ==


有时候我们需要接收用户在屏幕输入的指令来处理程序。实例如下:
有时候我们需要接收用户在屏幕输入的指令来处理程序。实例如下:


<sample title="" desc="" lang="scala" hererun="1">  
<sample title="" desc="" lang="scala" hererun="1">
import scala.io._
import scala.io._


第51行: 第51行:
}
}


  </sample>
</sample>
<blockquote>Scala2.11 后的版本 '''Console.readLine''' 已废弃,使用 scala.io.StdIn.readLine() 方法代替。
<blockquote>Scala2.11 后的版本 '''Console.readLine''' 已废弃,使用 scala.io.StdIn.readLine() 方法代替。
</blockquote>
</blockquote>
执行以上代码,屏幕上会显示如下信息:
执行以上代码,屏幕上会显示如下信息:


<sample title="" desc="" lang="scala" hererun="1">
<pre>
$ scalac Test.scala
$ scalac Test.scala
$ scala Test
$ scala Test
请输入小白教程官网 : www.xiaobai.wang
请输入小白教程官网 : www.xiaobai.wang
谢谢,你输入的是: www.xiaobai.wang
谢谢,你输入的是: www.xiaobai.wang
</sample>
</pre>
== 从文件上读取内容 ==
== 从文件上读取内容 ==


从文件读取内容非常简单。我们可以使用 Scala 的 '''Source''' 类及伴生对象来读取文件。以下实例演示了从 &quot;test.txt&quot;(之前已创建过) 文件中读取内容:
从文件读取内容非常简单。我们可以使用 Scala 的 '''Source''' 类及伴生对象来读取文件。以下实例演示了从 &quot;test.txt&quot;(之前已创建过) 文件中读取内容:


<sample title="" desc="" lang="scala" hererun="1">  
<sample title="" desc="" lang="scala" hererun="1">
import scala.io.Source
import scala.io.Source


第85行: 第85行:
}
}


  </sample>
</sample>
执行以上代码,输出结果为:
执行以上代码,输出结果为:


<sample title="" desc="" lang="scala" hererun="1">
<pre>
$ scalac Test.scala
$ scalac Test.scala
$ scala Test
$ scala Test
文件内容为:
文件内容为:
小白教程
小白教程
</sample>
</pre>

2022年11月7日 (一) 13:35的最新版本

Scala 文件 I/O

Scala 进行文件写操作,直接用的都是 java中 的 I/O 类 (java.io.File):


示例

import java.io._

object Test {

   def main(args: Array[String]) {

      val writer = new PrintWriter(new File("test.txt" ))

      writer.write("小白教程")

      writer.close()

   }

}

执行以上代码,会在你的当前目录下生产一个 test.txt 文件,文件内容为"小白教程":

$ scalac Test.scala
$ scala Test
$ cat test.txt
小白教程

从屏幕上读取用户输入

有时候我们需要接收用户在屏幕输入的指令来处理程序。实例如下:


示例

import scala.io._

object Test {

   def main(args: Array[String]) {

      print("请输入小白教程官网 : " )

      val line = StdIn.readLine()

      println("谢谢,你输入的是: " + line)

   }

}

Scala2.11 后的版本 Console.readLine 已废弃,使用 scala.io.StdIn.readLine() 方法代替。

执行以上代码,屏幕上会显示如下信息:

$ scalac Test.scala
$ scala Test
请输入小白教程官网 : www.xiaobai.wang
谢谢,你输入的是: www.xiaobai.wang

从文件上读取内容

从文件读取内容非常简单。我们可以使用 Scala 的 Source 类及伴生对象来读取文件。以下实例演示了从 "test.txt"(之前已创建过) 文件中读取内容:


示例

import scala.io.Source

object Test {

   def main(args: Array[String]) {

      println("文件内容为:" )

      Source.fromFile("test.txt" ).foreach{

         print

      }

   }

}

执行以上代码,输出结果为:

$ scalac Test.scala
$ scala Test
文件内容为:
小白教程
此页面最后编辑于2022年11月7日 (星期一) 13:35。