我的代码是这样的
scala> val r1 = sc.textFile("D:/item.csv").map(x => x.split(",")).map(x => List(
x(0),x(1),x(2),x(3),x(4),x(5)).toArray).mapPartitions{x => val stringWriter = ne
w StringWriter(); val csvWriter = new CSVWriter(stringWriter); csvWriter.writeAl
l(x.toList); Iterator(stringWriter.toString)}.saveAsTextFile("D:/result/r1")

解决方案 »

  1.   

    补充:
    1,这是Windows上的
    2,请问可以直接保存成一个CSV文件吗?
      

  2.   

    你应该用SparkSQL的SQLContext(2.0+为SparkSession)读取csv,然后用SQL select你要的列,然后write.csv就可以了
      

  3.   

      val sspbidSchema = StructType(Array(
          StructField("req_id", StringType, true),
          StructField("creative_id", StringType, true),
          StructField("group_id", StringType, true),
          StructField("user_ip", StringType, true)))
        val df = spark.read.schema(sspbidSchema).csv("ddd").select("req_id").write.csv("ddd")我用的是2.0