从新手到高手: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

相关推荐
luj_17684 小时前
残熵算法实时化三大瓶颈突破
c语言·开发语言·网络·经验分享·算法
TTBIGDATA4 小时前
【Ambari Plus】14.Hue 安装
大数据·hadoop·ambari·hdp·hue·cdh·bigtop
AI创界者4 小时前
零基础上手!ComfyUI + LTX-2.3 图生视频完整工作流搭建与调优指南(附避坑细节)
大数据·人工智能
不听话坏4 小时前
Ignition篇(下 一) 动态执行前的事情
开发语言·前端·javascript
mCell4 小时前
你以为短链接只是 Hash + 301/302?
后端·算法·架构
likeyi075 小时前
require 和 import的区别
开发语言·前端
有Li5 小时前
基于扩散模型的超声计算机断层成像实现肌肉骨骼组织高保真三维重建文献速递/基于多模态的医学影像分割与理解
大数据·深度学习·文献·医学生
咖啡八杯5 小时前
GoF设计模式——迭代器模式
java·后端·设计模式·迭代器模式
远离UE45 小时前
UE5 compute shader 原子加
开发语言·c++·ue5
C+-C资深大佬5 小时前
C++ 显式类型转换详解:static_cast、dynamic_cast、const_cast、reinterpret_cast
开发语言·c++