首页 > 其他分享 >无涯教程-Scala - 文件I/O

无涯教程-Scala - 文件I/O

时间:2024-01-26 19:31:50浏览次数:34  
标签:教程 读取 scala Demo Scala 无涯 io txt

Scala开放使用任何Java对象 , java.io.File 是可在Scala编程中用于读取和写入文件的对象之一。

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

参考链接

https://www.learnfk.com/scala/scala-file-io.html

标签:教程,读取,scala,Demo,Scala,无涯,io,txt
From: https://blog.51cto.com/u_14033984/9437681

相关文章

  • 软考中项第3版新教程,不按常理打出了3张牌
    软考中项系统集成项目管理工程师第3版新教程终于拿到手了!继软考高项教程2023年改版之后,中项教程在2024年改版已经是板上钉钉,可能吸取了去年3月仓促发布的教训,中项教程在1月份就发布了。翻看后最大的感受是:不按常理出牌!不按常理出牌之一:字数暴增软考中项第3版教程的字数,从第2版的93......
  • 无涯教程-Scala - 提取器
    Scala中的提取器Extractors是一个对象,该对象具有称为unapply的方法,该方法的目的是匹配值并将其拆开。让我们以对象定义apply和unapply方法为示例,apply方法的含义与以往相同:它将Test变成一个对象,该对象可以以与应用方法相同的方式应用于括号中的参数。因此,您可以编写Te......
  • 无涯教程-Scala - 异常处理
    Scala的异常与Java之类的许多其他语言中的异常一样工作,方法可以通过引发异常来终止,但是,Scala实际上没有检查过的异常。当您要处理异常时,可以像在Java中一样使用try{...}catch{...}块,只是catch块使用匹配来识别和处理异常。抛出异常引发异常看起来与Java中相同,创建一个异常......
  • 幻兽帕鲁服务器一键搭建教程
    最近缝合怪游戏《幻兽帕鲁(Palworld)》Steam在线峰值破百万,成为Steam史上同时在线玩家数最多的付费游戏。服务器于1月21日再次出现宕机情况,很多玩家选择自建游戏服务器。幻兽帕鲁是Pocketpair开发的一款开放世界生存制作游戏,游戏于2024年1月18日发行抢先体验版本。游戏中,玩家......
  • 无涯教程-Scala - 正则表达式
    本章介绍Scala如何通过scala.util.matching包中提供的Regex类支持正则表达式。尝试下面的示例程序,我们将尝试从语句中找出单词Scala。importscala.util.matching.RegexobjectDemo{defmain(args:Array[String]){valpattern="Scala".rvalstr="Sc......
  • Adobe Photoshop 2023激活教程(亲测有效)
    Photoshop软件具有直观易用的用户界面,各种图像编辑和处理工具,各种图层和蒙版功能,各种滤镜和插件。是一个非常强大的数字图像处理和编辑软件。无论是初学者还是有经验的设计师都可以使用该软件轻松地处理、修改和创建各种类型的图像,以满足不同领域的需求。安装步骤:https://kdocs.c......
  • 幻兽帕鲁有多火?!腾讯云联机服务器卖爆啦!4核16G官方推荐,限时特惠(内含教程)
    腾讯云4核16G仅需66元/月,适合用来搭建幻兽帕鲁服务器,支持32人专用服务器要自建幻兽帕鲁(Palworld)的服务器,可以采取以下步骤:获取服务器软件:首先,您需要在Steam库中搜索"PalworldDedicatedServer",或者在"工具"选项中选择进行搜索以找到该软件。下载并安装服务器软件:找到并下载所......
  • 无涯教程-Scala - 模式匹配
    在函数值和闭包之后,模式匹配是Scala第二广泛使用的函数,Scala在处理消息时为模式匹配提供了强大的支持。Pattern-示例objectDemo{defmain(args:Array[String]){println(matchTest(3))}defmatchTest(x:Int):String=xmatch{case1=>......
  • Vue2.0新手教程:如何轻松实现数字输入框指令?
    前言前端项目中,输入框是常见的,数字输入框更是常见,我们也许用惯了UI框架或是第三方提供的数字输入框,其实我们内心也想拥有自己的一个数字输入框指令,进可以攻(灵活使用),退可以守(灵活扩展),一切尽在掌握之中,不尽于被动。需求最近用到了数字输入框,需求需要满足:设置输入的小数位数设置是......
  • 无涯教程-Scala - 特性(Traits)
    Traits封装了方法和字段定义,然后可以通过混合到类中来重用它们。与类继承不同,一个类可以混合任意数量的traits。traits定义看起来类似于类定义,只是它使用关键字trait。以下是trait的基本示例语法。Traits-语法traitEqual{defisEqual(x:Any):BooleandefisNot......