一、概述
spark對離線數據進行ETL處理時,經常會碰到各式各樣的分隔符,如果碰到的分隔符恰好有需要轉義,就會引發一些錯誤,並且比較難以排查。比如我在項目中就碰到了客戶的~|~作為分隔符的數據。因為需要在界面上輸入,可把我坑慘了,花費了比較多的時間,在此記錄一下。
二、問題解決
如果需要在在json文件中指定分隔符,因為|需要轉義,因此需要將~|~寫成~\|~的形式,又因為\也需要轉義,因此程序需要傳入的是“~\\|~”的形式。而在json文件中寫分隔符時,\\也需要轉義,因此,你再json文件中需要寫的形式是“~\\\\|~"。即需要四個\才能達到轉義一個|的目的。