第21课:scala文件和xml操作实战及spark源码鉴赏
来源:互联网 发布:wto数据库 编辑:程序博客网 时间:2024/06/04 19:24
第21课:scala文件和xml操作实战及spark源码鉴赏
1 spark源码的文件和xml使用的源码鉴赏
2 scala文件和xml操作实战
def serialize[T](o: T): Array[Byte] = {
val bos = new ByteArrayOutputStream()
val oos = new ObjectOutputStream(bos)
oos.writeObject(o)
oos.close()
bos.toByteArray
}
/** Deserialize an object using Java serialization */
def deserialize[T](bytes: Array[Byte]): T = {
val bis = new ByteArrayInputStream(bytes)
val ois = new ObjectInputStream(bis)
ois.readObject.asInstanceOf[T]
}
package com.dt.spark.scala.bascis
import java.io.ByteArrayInputStream
import java.io.ByteArrayOutputStream
import java.io.ObjectInputStream
import java.io.ObjectOutputStream
import java.io.FileOutputStream
import java.io.FileInputStream
import scala.io.Source
@SerialVersionUID(99L) class DTSpark(val name:String) extends Serializable
object HelloFileOpps extends App{
val dtspark = new DTSpark("spark")
/** Serialize an object using Java serialization */
def serialize[T](o: T) = {
// val bos = new ByteArrayOutputStream()
val bos = new FileOutputStream("D:\\spark.txt")
val oos = new ObjectOutputStream(bos)
oos.writeObject(o)
oos.close()
// bos.toByteArray
}
// println(serialize(dtspark))
// println(new String(serialize(dtspark)))
serialize(dtspark)
/** Deserialize an object using Java serialization */
def deserialize[T](bytes: Array[Byte]): T = {
// val bis = new ByteArrayInputStream(bytes)
val bis = new FileInputStream("D:\\spark.txt")
val ois = new ObjectInputStream(bis)
ois.readObject.asInstanceOf[T]
}
// println(deserialize[DTSpark](serialize[DTSpark](dtspark)).name)
println(deserialize[DTSpark]( null).name)
for (line <- Source.fromFile("D:\\file.txt","GBK").getLines()){
println(line)
}
println(Source.fromFile("D:\\file.txt","GBK").mkString)
for (item <- Source.fromFile("D:\\file.txt","GBK") ) println(item)
println("================")
println(Source.fromURL("http://spark.apache.org/","UTF-8").mkString)
//////////////////////
/** Serialize an object using Java serialization */
/* def serialize[T](o: T): Array[Byte] = {
val bos = new ByteArrayOutputStream()
val oos = new ObjectOutputStream(bos)
oos.writeObject(o)
oos.close()
bos.toByteArray
}
// println(serialize(dtspark))
println(new String(serialize(dtspark)))
*//** Deserialize an object using Java serialization *//*
def deserialize[T](bytes: Array[Byte]): T = {
val bis = new ByteArrayInputStream(bytes)
val ois = new ObjectInputStream(bis)
ois.readObject.asInstanceOf[T]
}
println(deserialize[DTSpark](serialize[DTSpark](dtspark)).name)
*/
}
结果:
spark
生活不止眼前的苟且
还有诗和远方
寻找那片海
生活不止眼前的苟且
还有诗和远方
寻找那片海
生
活
不
止
眼
前
的
苟
且
还
有
诗
和
远
方
寻
找
那
片
海
================
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Apache Spark™ - Lightning-Fast Cluster Computing
</title>
<meta name="description" content="Apache Spark is a fast and general engine for big data processing, with built-in modules for streaming, SQL, machine learning and graph processing.">
<!-- Bootstrap core CSS -->
<link href="/css/cerulean.min.css" rel="stylesheet">
<link href="/css/custom.css" rel="stylesheet">
<!-- Code highlighter CSS -->
<link href="/css/pygments-default.css" rel="stylesheet">
<script type="text/javascript">
。。。。。。。。
- 第21课:scala文件和xml操作实战及spark源码鉴赏
- 第22课: Scala集合和高级函数操作实战及Spark源码鉴赏
- 大数据Spark “蘑菇云”行动前传第22课:Scala集合和高级函数操作实战及Spark源码鉴赏.
- 大数据Spark“蘑菇云”行动-第10课:Scala继承彻底实战和Spark源码鉴赏
- 大数据Spark“蘑菇云”行动-第13课Scala模式匹配实战和Spark源码鉴赏
- 第8课:零基础实战Scala最常用数据结构Map和Tuple及Spark源码鉴赏
- 第14课Scala集合上的函数式编程实战及Spark源码鉴赏
- 第15课:scala类型参数编程实战及spark源码鉴赏
- 第13课:Scala模式匹配实战及Spark源码鉴赏
- 第15课:Scala类型参数编程实战及Spark源码鉴赏
- 第16课:Scala implicits编程彻底实战及Spark源码鉴赏
- 第16课:Scala implicits编程彻底实战及Spark源码鉴赏
- 第9课:Scala类和对象彻底实战和Spark源码鉴赏
- 第11课:scala面向接口编程彻底实战和spark源码鉴赏
- 第10课:Scala继承彻底实战和Spark源码鉴赏
- 第11课:Scala面向接口彻底实战和Spark源码鉴赏
- 大数据Spark“蘑菇云”行动-第14课Scala集合上的函数式编程实战及Spark源码鉴赏
- 大数据Spark“蘑菇云”行动-第11课:Scala面向接口彻底实战和Spark源码鉴赏
- 0 1 背包 poj 3624
- Java虚拟机类加载机制(转)
- JavaScript事件处理
- 【POJ】2346 - Lucky tickets(数位dp)
- Solrj创建doc/pdf/txt文件索引,高亮查询
- 第21课:scala文件和xml操作实战及spark源码鉴赏
- CentOS7:常用命令-笔记
- 2543. 【NOIP2011模拟9.1】直角三角形 (StandardIO)
- 1134 最长递增子序列
- map练习 统计参数个数
- CodeForce 675C 技巧题(其实我也不知道要归到什么里面去。。。)
- Crime
- Leetcode-pascals-triangle
- 数据结构之二叉树的建立与遍历