ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java_io与Scala_io

2021-07-15 23:36:35  阅读:264  来源: 互联网

标签:java val scala Scala bufferedReader io new line


今天我们讲一下java-io读写数据与scala读写数据的区别

1.java——IO读写

object Demo7IO {
  def main(args: Array[String]): Unit = {
    //使用java方式读取文件      scala中的异常默认抛出
    val fileReader = new FileReader("data/students.txt")
    //缓冲流
    val bufferedReader = new BufferedReader(fileReader)
    //读取第一行
    var line: String = bufferedReader.readLine()
    while (line != null) {
      println(line)
      //读取下一行
      line = bufferedReader.readLine()
    }

    bufferedReader.close()

1.1scala读取数据   使用scala读取数据,需要使用到迭代器,重点迭代器在Scala中只能使用一次!!!

    //在scala中可以使用Source读取文件 
    val source: BufferedSource = Source.fromFile("data/students.txt") 
    //获取所有行,得到一个迭代器
    val lines: Iterator[String] = source.getLines()
     //使用增强for
    for (line <- lines) {
      println(line)
    }
    //使用====进行分隔
    println("=" * 100)
    //使用链式调用
    val iterator: Array[String] = Source.fromFile("data/students.txt").getLines().toArray

  2.数据输出流   scala中没有特有的方法,与Java中的一样

  

    //输出地址    
    val bufferedWriter = new BufferedWriter(new FileWriter("data/out"))

    for (line <- iterator) {
      bufferedWriter.write(line)
     //使用newLine进行换行
      bufferedWriter.newLine()
      bufferedWriter.flush()
    }

    bufferedWriter.close()

  

 

标签:java,val,scala,Scala,bufferedReader,io,new,line
来源: https://www.cnblogs.com/xiaoazheng/p/15018038.html

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有