Scala入门到精通——第十二节 I/O与正则表达式

本文深入介绍了Scala中的I/O操作,包括文件读写和网络I/O,并详细探讨了正则表达式的使用,包括常见符号的含义和实战示例。通过示例展示了如何在Scala中进行高效的文本匹配和处理。
摘要由CSDN通过智能技术生成

本节主要内容

  1. Scala I/O操作简介
  2. Scala 写文件
  3. Scala 读文件
  4. Scala 网络I/O
  5. 正则表达式简介
  6. Scala正则表达式实战

1. Scala I/O操作简介

I/O操作是一门编程语言中的重要内容,在Scala中,它更多的是调用java中的I/O类或者通过对java中的I/O类进行相应的封装来实现I/O操作。在上一节内容中我们已经用到了I/O操作:

trait FileLogger extends Logger{
   

  val fileName:String
  //PrintWriter使用的是java.io.PrintWriter类
  val fileOutput=new PrintWriter(fileName:String)
  fileOutput.println("#")

  def log(msg:String):Unit={
    fileOutput.print(msg)
    fileOutput.flush()
    }
}

scala自身关于I/O的内容比较少,下图给出的是scala I/O相关的类
这里写图片描述
可以看到,相比于java语言中的I/O类,scala语言中的I/O相关类数量就显得少得多,而这其中最常用的只有Source这个类,因此要学好scala I/O操作,必须对java中的I/O相关类有个比较深入的了解。

2. Scala 写文件

Scala进行文件写操作,直接用的都是java中的I/O类,例如

import java.io._

object ScalaFileWriter {
  def main(args: Array[String]): Unit = {
    val fileWriter=new FileWriter("file.txt")
    fileWriter.write("scala file writer")
    fileWriter.flush()
    fileWriter.close()
  }
}

可以看出 scala中的文件写操作与java中的I/O操作并没有什么区别,这说明了scala可以与java进行互操作。

3. 读文件

scala中读文件可以直接使用java中的I/O类,也可以用scala中的Source对象,该对象对java中的I/O进行了封装,使用更简便更灵活,下面的代码给出了如果读取文件并将文件内容格式化输出:

import scala.io._

object ScalaFileReader {
  
上百课详细讲解,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 本课程主要讲解的内容包括:Scala编程、Hadoop与Spark集群搭建、Spark核心编程、Spark内核源码深度剖析、Spark性能调优、Spark SQL、Spark Streaming。 本课程的最大特色包括: 1、代码驱动讲解Spark的各个技术点(绝对不是照着PPT空讲理论); 2、现场动手画图讲解Spark原理以及源码(绝对不是干讲源码和PPT); 3、覆盖Spark所有功能点(Spark RDD、Spark SQL、Spark Streaming,初级功能到高级特性,一个不少); 4、Scala全程案例实战讲解(近百个趣味性案例); 5、Spark案例实战的代码,几乎都提供了Java和Scala两个版本和讲解(一次性同时精通Java和Scala开发Spark); 6、大量全网唯一的知识点:基于排序的wordcount,Spark二次排序,Spark分组取topn,DataFrame与RDD的两种转换方式,Spark SQL的内置函数、开窗函数、UDF、UDAF,Spark Streaming的Kafka Direct API、updateStateByKey、transform、滑动窗口、foreachRDD性能优化、与Spark SQL整合使用、持久化、checkpoint、容错与事务。 7、多个从企业实际需求抽取出的复杂案例实战:每日uv和销售额统计案例、top3热卖商品统计案例、每日top3热点搜索词统计、广告计费日志实时黑名单过滤案例、热点搜索词滑动统 计案例、top3热门商品实时统计案例 8、深度剖析Spark内核源码与Spark Streaming源码,给源码进行详细的注释和讲解(史上最细致源码讲解) 9、全面讲解SparkSpark SQL、Spark Streaming的性能调优,其中包括全网唯一的Shuffle性能调优(详细讲解性能调优的各个技术点) 10、涵盖Spark两个重要版本,Spark 1.3.0和Spark 1.5.1的讲解(走在Spark最前沿,涵盖最新高级特性) 一、Scala编程详解 二、课程环境搭建 三、Spark核心编程 四、Spark内核源码深度剖析 五、Spark性能优化 六、Spark SQL 七、Spark Streaming
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值