我们的 csv 文件中有以下内容:
DI_SEQUENCE_NUMBER;DI_OPERATION_TYPE;MANDT;SPRAS;MVGR2;BEZEI;SRC_SYSTEM;LOAD_DATE;ODQ_CHANGEMODE;ODQ_ENTITYCNTR
76;"I";"220";"E";"200";"SAUGNAPF:BX75P:30/60M.FILT;G3/8""AU1/8"";"D16";"20231017T114626";"C";1
77;"I";"220";"E";"201";"COMPOTS AND FRUIT DRINKS";"D16";"20231017T114626";"C";1
第 76 行导致了问题,我们找不到正确的选项来正确读取。导致问题的部分是“SAUGNAPF:BX75P:30/60M.FILT;G3/8”“AU1/8””。生成此 csv 文件的系统原始文本是 SAUGNAPF:BX75P:30/60M.FILT ;G3/8""AU1/8".
我们尝试过: 选项(“报价”,“””) 选项(“逃脱”,“”“)
但运气不好
我们尝试过: 选项(“报价”,“””) 选项(“逃脱”,“”“)
我们希望将此作为输出
quote
和 escape
选项在这种情况下似乎不起作用。我读取数据时没有任何显示列值的选项,例如:
“索格纳夫:BX75P:30/60M.FILT;G3/8”“AU1/8””
为了删除开始和结束引号,我使用了 regexp_replace。
spark.read.csv(sep=";", header=True, path=<file_path>) \
.withColumn("BEZEI", f.regexp_replace("BEZEI", "^[\"]|[\"]$", ''))