一、概述
spark对离线数据进行ETL处理时,经常会碰到各式各样的分隔符,如果碰到的分隔符恰好有需要转义,就会引发一些错误,并且比较难以排查。比如我在项目中就碰到了客户的~|~作为分隔符的数据。因为需要在界面上输入,可把我坑惨了,花费了比较多的时间,在此记录一下。
二、问题解决
如果需要在在json文件中指定分隔符,因为|需要转义,因此需要将~|~写成~|~的形式,又因为也需要转义,因此程序需要传入的是“~\|~”的形式。而在json文件中写分隔符时,\也需要转义,因此,你再json文件中需要写的形式是“~\\|~"。即需要四个才能达到转义一个|的目的。