频道栏目
首页 > 系统 > win7激活工具 > 正文
怎么在Windows上使用Intellij编写Spark程序访问文件?
2018-04-11 11:58:19      个评论    来源:LittleLawson的博客  
收藏   我要投稿

在Windows上使用Intellij编写Spark程序访问文件

访问txt文件

1.使用Spark访问的文件类型有很多种,包括txt,csv,json等。下面依次使用做访问

2.本程序使用maven+intellij+spark+windows编写

访问.txt文件

import org.apache.spark.{SparkConf, SparkContext}

object ReadTxt {
  def main(args:Array[String]): Unit ={
    val conf = new SparkConf().setAppName("ReadCSV").setMaster("local")//必须要加上.setAppName(),否则报错
    val sc = new SparkContext(conf)

    val input = sc.textFile("C:\\Users\\enmonster\\Desktop\\information.txt")

    input.take(10).foreach(println)
  }
}

读取的文件以及执行结果均如下:

name,LittleLawson
age,20
gender,male

访问.csv文件

import java.io.StringReader

import com.opencsv.CSVReader
import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

case class Person(name: String, age: Int,gender:String)

object ReadCSV {
  def main(args:Array[String]): Unit ={
    val conf = new SparkConf().setAppName("ReadCSV").setMaster("local")//
    val sc = new SparkContext(conf)

    val input = sc.textFile("C:\\Users\\enmonster\\Desktop\\information.csv")
    val result: RDD[Array[String]] = input.map { line =>
      line.split(",",-1)
      val reader = new CSVReader(new StringReader(line))
      reader.readNext()
    }
    result.foreach(print)//打印出来的是String对象的hashcode
    result.foreach(x => x.foreach(print))//String对象遍历出来的值 --lamada表达式
    //result.foreach(_.foreach(println(_)))//上式的简写
  }
}
点击复制链接 与好友分享!回本站首页
上一篇:windows下配置QT环境变量和命令行编译QT程序步骤教程
下一篇:Window2008iis7.5服务器怎么导出当前所有站点?
相关文章
图文推荐
点击排行

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站