从新手到高手:Scala函数式编程完全指南,Scala 文件 I/O(27)

1、Scala 文件 I/O

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

scala 复制代码
import java.io._

object Test {
   def main(args: Array[String]) {
      val writer = new PrintWriter(new File("test.txt" ))

      writer.write("scala")
      writer.close()
   }
}

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

scala 复制代码
scala

1.1、从屏幕上读取用户输入

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

scala 复制代码
import scala.io._
object Test {
   def main(args: Array[String]) {
      print("请输入scala : " )
      val line = StdIn.readLine()
      println("谢谢,你输入的是: " + line)
   }
}

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

请输入scala官网 : https://www.scala-lang.org/

谢谢,你输入的是: https://www.scala-lang.org/

1.2、从文件上读取内容

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

scala 复制代码
import scala.io.Source

object Test {
   def main(args: Array[String]) {
      println("文件内容为:" )

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

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

文件内容为:

scala

相关推荐
哥不想学算法4 小时前
【C++】字符串字面量拼接
开发语言·c++
cc5725026534 小时前
高考志愿填报:大数据相关专业到底怎么选?
大数据·高考
本旺4 小时前
Elasticsearch 前缀匹配性能优化实战,附4种方式即执行计划判别
大数据·elasticsearch·性能优化
葫芦和十三4 小时前
图解 MongoDB 28|块与迁移:balancer 怎么均衡数据
后端
葫芦和十三4 小时前
图解 MongoDB 27|分片策略:范围分片 vs 哈希分片
后端·mongodb·agent
hhzz5 小时前
Python大数据实战(十六):音乐推荐系统——基于协同过滤算法构建个性化歌单引擎
大数据·人工智能·python·数据挖掘·数据分析
paopaokaka_luck5 小时前
英语单词学习系统的设计与实现(基于艾宾浩斯遗忘曲线的智能复习机制、语音朗读、多题型测试与错题自动收录、Echarts图形化分析)
vue.js·spring boot·后端·echarts
gugucoding5 小时前
21. 【C语言】打包不同类型:结构体
c语言·开发语言
Brookty5 小时前
【JavaEE】线程安全(一).4:写块串行保安全、CAS
java·开发语言·java-ee·多线程·线程安全