You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PySpark读取定长格式文件并关联批次表头与明细记录的实现咨询

PySpark读取定长格式文件并关联批次表头与明细记录的实现咨询

我有一个定长格式的文本文件,内容如下:

K57 details 1234
K58 abcdefghijklmnopqrstuvwxyz  0123456789
K58 abcdefghijklmnopqrstuvwxyz  0123456789
K58 abcdefghijklmnopqrstuvwxyz  0123456789
K57 details 5678
K58 abcdefghijklmnopqrstuvwxyz  9876543210
K58 abcdefghijklmnopqrstuvwxyz  9876543210
K58 abcdefghijklmnopqrstuvwxyz  9876543210
.....
.....

其中K57是每个批次的表头记录,K58是对应批次的明细记录。文件中会有多个批次,每个批次都是先出现一条K57表头记录,后面跟着多条K58明细记录。

我需要将每个K58记录提取出对应字段,同时关联上所属批次的K57表头信息,最终输出格式如下:

+----------+------------+------------+
|K57_detail|K58_detail_1|K58_detail_2|
+----------+------------+------------+
|1234      |abcdef      |01234       |
|1234      |abcdef      |01234       |
|1234      |abcdef      |01234       |
|5678      |abcdef      |98765       |
|5678      |abcdef      |98765       |
|5678      |abcdef      |98765       |
+----------+------------+------------+

我知道可以用PySpark的substring()函数从每行提取需要的值,但目前的难点在于如何把对应批次的K57表头信息关联到该批次下的每一条K58明细记录上。如果有实现方法的话,恳请帮忙解答,提前感谢!

备注:内容来源于stack exchange,提问作者Suraj Pandey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 15:13:01