У меня есть текстовый файл с сообщениями, в котором есть несколько разделителей типа \ u0003, \ u0002 и т. Д. Я использую функцию Split при загрузке данных в Rdd, но не могу удалить разделители. Когда я изменяю разделитель с \ u0003 на просто u0003, функция разделения, кажется, работает для rdd, но тогда у меня остается дополнительный \ ..
Я видел некоторые решения, и они упоминают, что приведенный ниже код должен работать.
val input = sc.textFile("filename.txt").map(_.split("\u0003"))
input.collect()
Я просто получаю всю строку без разделителей
import org.apache.spark.sql.{Row, SparkSession}
import org.apache.spark.sql.types.{DoubleType, StringType, StructField, StructType}
import org.apache.spark.rdd.RDD
input: org.apache.spark.rdd.RDD[Array[String]] = MapPartitionsRDD[4031] at map at command-1662719304326521:7
res24: Array[Array[String]] = Array(Array({"GDSFE001\u00031\u0003N\u00030\u0003Confirm_Shipment_Closed\u00035572214\u0003B\u0003I7EPM0XV1Z8KB\u0003TAG0000\u0001\u000220190516\u00011409\u0001GCSS\u0001Message Broker\u0001\u0001\u0001\u0001O\u0001\u0001\u0001N\u0001BKG\u0001\u0001\u0001\u000163.0\u0002TAGT100\u0001HDZKG4XV1Z9KB\u0001BNILG4XV1Z9KB.................................