Spark基礎-Scala檔案操作
核心
scala檔案操作
檔案操作的大概流程
package com.xlucas
import java.io._
import scala.io.Source
/**
* Created by xlucas on 2017/9/4 0004.
*/
@SerialVersionUID(99L) class PaicMis(val name:String) extends Serializable //定義序列化類
object FileOop extends App {
val paic = new PaicMis("xlucas")
def serializeMen[T](o: T): Array[Byte] = {
val bos = new ByteArrayOutputStream() //記憶體輸出流,和磁碟輸出流從操作層面上講是一樣的
val bos1 = new FileOutputStream("E:\\spark\\spark.txt")
val oos = new ObjectOutputStream(bos)
oos.writeObject(o)
oos.close()
bos.toByteArray
}
def serializeFile[T](o: T) = {
val bos = new FileOutputStream("E:\\spark\\spark.txt") //輸入檔案序列化
val oos = new ObjectOutputStream(bos)
oos.writeObject(o)
oos.close()
}
println(serializeMen(paic))
def deserializeMen[T](bytes: Array[Byte]): T = {
val bis = new ByteArrayInputStream(bytes)//記憶體反序列化
val ios = new ObjectInputStream(bis)
ios.readObject().asInstanceOf[T]
}
println(serializeMen(paic))
def deserializeFile[T](bytes: Array[Byte]): T = {
val bis = new FileInputStream("E:\\spark\\spark.txt")//檔案反序列化
val ios = new ObjectInputStream(bis)
ios.readObject().asInstanceOf[T]
}
println(deserializeMen[PaicMis](serializeMen[PaicMis](paic)).name)
serializeFile(paic)
println(deserializeFile[PaicMis](null).name)
for (line <- Source.fromFile("E:\\spark\\file.txt","UTF-8").getLines()) println(line) //scala讀取檔案的內容
println(Source.fromFile("E:\\spark\\file.txt","UTF-8").mkString)//scala讀取檔案的內容
println(Source.fromURL("http://blog.csdn.net/paicMis/article/month/2017/09","utf-8").mkString)//scala獲取url的內容
}
相關文章
- scala基礎語法-----Spark基礎Spark
- Spark基礎-Scala提取器Spark
- scala_準備_spark_基礎Spark
- Scala檔案操作詳解
- Python基礎——檔案操作Python
- Scala檔案的讀寫操作
- 29-檔案物件基礎操作物件
- 【Scala篇】--Scala初始與基礎
- python 檔案操作的基礎總結Python
- FastAPI基礎之 表單和檔案操作ASTAPI
- 【C++基礎】檔案流讀寫操作C++
- linux 檔案屬性及基礎操作Linux
- Spark基礎Spark
- Scala基礎學習
- Scala基礎語法
- Python基礎入門(9)- Python檔案操作Python
- 基礎篇- 沙盒以及檔案的操作和存取
- Scala 的基礎語法
- Python基礎知識之檔案的讀取操作Python
- Linux基礎學習——檔案基礎Linux
- PHP基礎---檔案包含PHP
- Oracle控制檔案基礎Oracle
- C# 基礎知識系列- 14 IO篇 檔案的操作C#
- kafka:spark-project專案的kafka和scala配置KafkaSparkProject
- Python基礎知識_第10節_檔案操作(IO技術)Python
- 檔案管理基礎命令一
- python 基礎之檔案Python
- Oracle引數檔案基礎Oracle
- 【Java基礎】--上傳檔案Java
- C++基礎::檔案流C++
- Spark修煉之道(基礎篇)——Linux大資料開發基礎:第四節:Linux檔案系統(二)SparkLinux大資料
- Spark連線MongoDB之ScalaSparkMongoDB
- scala簡要:檔案訪問
- 【Spark篇】---Spark中Shuffle檔案的定址Spark
- Scala學習 1.1 Scala基礎與語法入門實戰
- spark基礎之spark streaming的checkpoint機制Spark
- Spark學習(二)——RDD基礎Spark
- 【大資料】Spark RDD基礎大資料Spark