`
kane_xie
  • 浏览: 145012 次
社区版块
存档分类
最新评论

Scala入门(四):文件操作

阅读更多
 
最近在做一个spark项目,顺便分享一下我的Scala入门过程。这一系列文章假定读者有一定的java或者其他面向对象编程语言基础。本文主要简单介绍文件的操作。

 

按惯例先上代码

val file = Source.fromFile("/Users/xiejing/Desktop/javascript")
for (line <- file.getLines()) {
  println(line)
}
file.close()

val webFile = Source.fromURL("https://www.baidu.com/");
webFile.foreach(print)
webFile.close

var javaWriter = new BufferedWriter(new FileWriter(new File("/Users/xiejing/Desktop/a.txt")))
for (i <- 4 to 10) {
  javaWriter.write(i.toString())
}
javaWriter.flush()
javaWriter.close()

 

scala.io.Source.fromFile读取文件, getline获得一个iterator,遍历获取每一行,比Java方便多了。但这里有个问题,由于getline获得的是iterator,一旦你使用它完成遍历,iterator就失效了,所以如果需要反复的遍历文件,推荐Source.fromFile(...).getLines.toList,将文件内容转化为List,可以反复遍历,但代价是内存的消耗。

 

我们也可以用Source.fromURL来读取网络文件。

 

由于Scala运行在JVM上,因此可以无障碍的使用Java的类库,所以你可以使用java.io这个库来读取文件。

0
1
分享到:
评论

相关推荐

    scala入门(仅供参考)

    本篇文章主要面向有一定Java开发经验的程序员,旨在帮助他们入门Scala。 ### 1. Scala简介 Scala是由Martin Odersky设计的一种静态类型的编程语言,它的名字来源于"Scalable Language"的缩写,表明它能够从小规模...

    Scala编程详解 第8讲-Scala编程详解:函数入门之过程、lazy值和异常 共5页.pptx

    Scala是一种强大的多范式编程语言,它在大数据领域中被广泛应用,主要因为它与Apache Spark等框架的紧密结合。在深入探讨Scala编程的各个层面时,我们重点关注函数、过程、lazy值和异常处理这些核心概念。 首先,...

    scala入门--文档版本

    ### Scala入门知识点详解 #### 一、Scala简介与特点 **Scala**是一种融合了面向对象编程和函数式编程特性的现代编程语言。它被设计成一种可扩展的语言,旨在克服传统编程语言的一些限制,同时保持代码的简洁性和...

    Scala入门教程_中文版整理

    ### Scala入门教程知识点详解 #### 一、Scala简介 Scala是一种多范式的编程语言,它融合了面向对象编程和函数式编程的特点。由于Scala运行在Java平台上,因此它能够充分利用Java平台的优势,如丰富的库资源、强大...

    写给Python程序员的Scala入门教程1

    【标题】:“写给Python程序员的Scala入门教程1” 【描述】:本教程旨在帮助熟悉Python的程序员逐步学习Scala语言,特别关注如何利用已有的Python背景来理解和掌握Scala的特性和用法。教程将探讨Scala在大数据处理...

    scala-advanced:Scala先进

    scala 入门进阶、常用类库学习 项目结构 模块说明 模块 说明 目的 完成 语言核心特性、特性深度分析示例、常用函数 入门 √ 练习题-std-lib 巩固基础 √ 练习题-Scala函数式编程 函数式编程思想进阶 × scala-谜题 ...

    Scala语法入门.pdf

    插件的安装通常包括下载Scala插件文件,并将其放置到IDE的插件目录中,随后按照IDE的插件安装向导进行安装。 总之,Scala作为一种结合了面向对象和函数式编程的现代编程语言,在大数据处理、并发编程等领域具有很大...

    SCALA 入门材料

    ### SCALA 入门知识点详解 #### Scala 概述 - **定义与特点**:Scala是一种结合了面向对象编程和函数式编程特性的多范式编程语言。它运行于Java虚拟机(JVM)之上,并且能够与Java代码无缝集成。 - **学习Scala的原因...

    Scala初学者入门课程笔记

    Scala 的官方网站提供了 Scala SDK 的下载地址,可以选择适合自己操作系统的版本。另外,还需要下载 Idea 的 Scala 插件,以便在 IntelliJ IDEA 中使用 Scala。 基础语法 Scala 的基础语法包括变量、常量、标志符...

    scala-glm:用于拟合线性和广义线性统计模型的Scala库

    glm的模板,因此,使用最新版本的SBT,您可以使用以下命令创建一个最小的scala-glm项目模板: sbt new darrenjw/scala-glm.g8 如果您只想尝试使用该库而不设置任何类型的项目,则可以使用以下会话进行操作:...

    scala入门资料

    ### Scala入门知识点详解 #### 一、Scala简介与特点 Scala是一种高级编程语言,它能够与Java无缝对接,运行在JVM(Java虚拟机)之上。作为一种多范式语言,Scala支持面向对象编程和函数式编程。Scala的设计目标是...

    Scala学习笔记

    - **操作符优先级**: Scala中并没有传统意义上的操作符重载,但通过方法调用来模拟操作符的行为,并且可以根据需要自定义优先级。 #### 4. 数组与对象的处理 - **数组**: Scala中的数组是类的实例,这与Java不同,...

    scala-basics:面向只懂动态语言的Scala学习者的资源

    标题“scala-basics:面向只懂动态语言的Scala学习者的资源”意味着这个压缩包文件包含了一系列专门为动态语言背景的学习者设计的Scala基础教程和资源。这些资料可能包括代码示例、解释性文档、练习和教学视频,旨在...

    Scala快速入门(适合为学Spark学习Scala的同学)

    然后下载Scala的msi安装文件,执行安装并设置环境变量SCALA_HOME和Path。在Linux系统中,你可以直接解压Scala的二进制包。对于开发环境,你可以选择Eclipse或IntelliJ IDEA,分别通过安装Scala插件或SDK来支持Scala...

    学习scala好的项目

    在"scala-study"这个文件夹中,可能包含的子文件有练习代码、笔记、教程文档等,这些都是学习过程中的宝贵资料。通过这些资源,初学者可以逐步了解如何使用Scala编写Spark程序,包括如何创建SparkSession、加载数据...

    scala写的第一个wordcount例子

    6. 文件I/O操作: 要读取和写入文件,我们需要使用Scala的`Source`类或者Java的`FileInputStream`、`BufferedReader`等。在这个例子中,会读取包含文本数据的文件,并将结果输出到另一个文件。 7. 类与对象: ...

    Spark&Scala安装教程.docx

    ### Spark与Scala安装教程知识点详解 ...以上步骤详细介绍了如何在Ubuntu环境下安装和配置Spark以及Scala的基本流程,适合初学者入门学习。通过这些步骤,读者可以顺利地搭建起一个简单的Spark与Scala开发环境。

Global site tag (gtag.js) - Google Analytics