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

相关推荐
万少3 小时前
用腻了 WorkBuddy 的默认界面?这个开源小工具给它换上了毛玻璃
前端·javascript·后端
皮皮林5515 小时前
代码越“整洁”,性能越“拉胯”?
后端
benchmark_cc5 小时前
如何用 Python + QuantDash 快速构建高胜率“配对交易(Pairs Trading)”策略?
开发语言·人工智能·python·pandas·量化交易·quantdash
金金金__6 小时前
一篇文章带你入门OpenSpec
后端
明航咨询—张老师6 小时前
软考软件评测师技术深度剖析:2026年考试改革后的知识体系与备考架构
大数据·架构
阿维的博客日记6 小时前
MultipartFile 是不是表示仅仅是一个分片?
java·后端·spring·multipartfile
海上彼尚6 小时前
Nodejs也能写Agent - 16.LangGraph篇 - 条件分支与循环
前端·后端·langchain·node.js
程序员无隅7 小时前
Coding Agent 为什么压缩上下文后还能继续工作?上下文模块设计拆解
java·开发语言·数据库
Python+997 小时前
Java 枚举类(Enum)详解:从基础到高级应用
java·开发语言·python
千桐科技7 小时前
qData 数据中台开源版从 MySQL 到 Doris完成一次数据同步
大数据·mysql·开源·doris·数据中台·qdata