Я недавно обрабатывал бумажный журнал и хотел разбить запись на части. Я использовал Python, чтобы сделать это, поскольку запись была записью с фиксированной позицией с различными элементами данных в фиксированных местах записи. В моем случае вся запись была текстовой, но можно легко применить эту технику для преобразования различных столбцов в соответствующий тип.
Вот пример записи. Я добавил несколько строк, чтобы помочь визуализировать смещения данных, используемые в коде для доступа к данным:
1 2 3 4 5 6 7 8 9
0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
N 4000000 PROD 19114 06:27:04.07 JOB02679 00000090 $HASP373 PWUB02#C STARTED - INIT 17
Обратите внимание на фиксированные позиции столбцов для различных элементов и то, как на них ссылается позиция. Используя эту технику, вы можете обработать файл и создать CSV с выводом, который вы хотите обработать в Excel.
Для моего случая я использовал Python 3.
def processBaseMessage(self, message):
self.command = message[1]
self.routing = list(message[2:9])
self.routingCodes = [] # These are routing codes extracted from the system log.
self.sysname = message[10:18]
self.date = message[19:24]
self.time = message[25:36]
self.ident = message[37:45]
self.msgflags = message[46:54]
self.msg = [ message[56:] ]
Затем вы можете отформатировать форму, необходимую для дальнейшей обработки. Есть и другие способы обработки данных мэйнфреймов, но в зависимости от вопроса этот подход должен соответствовать вашим потребностям, но есть много вариантов.