Files
UnitedAirforce 9633c3acf4 toolset
2025-02-09 21:01:28 +08:00

36 lines
1.0 KiB
Python

import struct
import openpyxl
def write_uvdata(input_excel, output_file):
wb = openpyxl.load_workbook(input_excel)
ws = wb.active
sections = []
for row in ws.iter_rows(values_only=True):
if row[0]:
sections.append(bytes.fromhex(row[0]))
num_sections = len(sections)
offsets = []
current_offset = 6 + num_sections * 4 + 4 # Additional header repeat
for section in sections:
offsets.append(current_offset)
current_offset += len(section)
with open(output_file, 'wb') as f:
file_length = struct.pack('>I', current_offset)
num_sections_packed = struct.pack('>H', num_sections)
f.write(file_length + num_sections_packed)
for offset in offsets:
f.write(struct.pack('>I', offset))
f.write(file_length)
for section in sections:
f.write(section)
print(f"Packed {num_sections} sections into {output_file}")
write_uvdata('uvdata.xlsx', 'out_uvdata.dat')