From b455eea3eea1ff2e4c262ce1ddeeee07e56f4554 Mon Sep 17 00:00:00 2001 From: Felix Semler <semler@astron.nl> Date: Thu, 6 Jan 2022 12:27:51 +0100 Subject: [PATCH] First changes --- Reading_MT/read_headers.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Reading_MT/read_headers.py diff --git a/Reading_MT/read_headers.py b/Reading_MT/read_headers.py new file mode 100644 index 00000000..5440592c --- /dev/null +++ b/Reading_MT/read_headers.py @@ -0,0 +1,36 @@ +import codecs +import struct + +file = open('Reading_MT/F000001.MT','rb') + +data = file.read() + +file.close() + + +""" +Dataset contains fixed blocks of blocklength 3840 bytes (characters in EBCDIC code) +each block 30 records of 128 bytes +first 24 bytes contain identification data + +Block nr | Type + +1 | File Descriptor +2,3 | Observation Header +... + + + +Use codecs.decode(data, 'cp500') to read strings (C) +Use struct.unpack('>l',data) to read 4byte long (F?) +""" +#Read first block of data +block_1 = data[:3840:] + +record_size = 128 +records = 30 +id_data = block_1[:24] +block_1 = [block_1[24+i:24+i+record_size] for i in range(0,records*record_size, record_size)] +print((block_1[0:2])) +#print(codecs.decode(block_1[0],'unicode-escape')) +print(type(block_1[0])) \ No newline at end of file -- GitLab