35_io_数据流

import java.io.{DataInputStream, DataOutputStream, FileInputStream, FileOutputStream}

// 序列化
object DataOutputStreamTest extends App {
  // 创建流对象
  val outPath = "sparkcore/src/main/data/序列化.txt"
  val outputStream = new DataOutputStream(new FileOutputStream(outPath))

  //写入数据
  outputStream.writeUTF("大王")
  outputStream.writeInt(100)
  outputStream.writeDouble(19.8)

  //关闭流
  outputStream.close()
  println("序列化完成")
}

// 反序列化
object DataInputStreamTest extends App {
  // 创建流对象
  val inPath = "sparkcore/src/main/data/序列化.txt"
  val inputStream = new DataInputStream(new FileInputStream(inPath))

  //读取数据
  // 读取顺序要看 写入顺序一致
  val name = inputStream.readUTF
  val id = inputStream.readInt
  val sum = inputStream.readDouble

  println(s"${name} - ${id} - ${sum}")

  //关闭流
  inputStream.close()
  println("反序列化")
}

 

posted @ 2021-11-17 16:06  学而不思则罔!  阅读(28)  评论(0)    收藏  举报