第21课:Scala文件和XML操作实战

写文件,读文件的过程:

第21课:Scala文件和XML操作实战_第1张图片
Paste_Image.png

首先我们展示一下序列化和反序列化的过程:

@SerialVersionUID(99L) class DTSpark(val name:String) extends Serializable

object HelloFileOperation extends App {
  val dtSpark=new DTSpark("Spark")
 
  def serialize[T](o:T)={
    val bos=new ByteArrayOutputStream() //内存输出流,和磁盘输出流在操作的层面上是一样的
    val oos=new ObjectOutputStream(bos)
    oos.writeObject(o)
    oos.close()
    bos.toByteArray()
  }
 
  println(serialize(dtSpark))
 
  def deserialize[T](arr:Array[Byte])={
    val bis=new ByteArrayInputStream(arr)
    val ois=new ObjectInputStream(bis)
    ois.readObject().asInstanceOf[T]
  }
 
 
  println(deserialize[DTSpark](serialize(dtSpark)).name)
}

Scala对XML的原生支持是很好的,可以直接写xml:

import scala.xml._
  val xml=XML.loadFile("D:\\xml.txt")
  println(xml)

归纳总结:1.读文件,写文件的过程
2.序列化和反序列化的例子
3.Scala对xml的支持

第21课:Scala文件和XML操作实战_第2张图片
cccc.png

你可能感兴趣的:(第21课:Scala文件和XML操作实战)