Lotus 1-2-3 spreadsheet
application/octet-stream
Magic Bytes
Offset: 0
00 00 1A 00 02 10 04 00 00 00 00 00
The WK5 file format is a proprietary spreadsheet structure developed by Lotus Software, which was later acquired by IBM. It was primarily utilized for data calculation, financial modeling, and organizational tasks within the Lotus 1-2-3 Release 5 software suite. As a legacy format, it is now considered largely obsolete, although modern applications such as Microsoft Excel or Apache OpenOffice may still offer limited compatibility for historical data recovery purposes.
Validation Code
How to validate .wk5 files in Python
Python
def is_wk5(file_path: str) -> bool:
"""Check if file is a valid WK5 by magic bytes."""
signature = bytes([0x00, 0x00, 0x1A, 0x00, 0x02, 0x10, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00])
with open(file_path, "rb") as f:
return f.read(12) == signature
How to validate .wk5 files in Node.js
Node.js
function isWK5(buffer: Buffer): boolean {
const signature = Buffer.from([0x00, 0x00, 0x1A, 0x00, 0x02, 0x10, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00]);
return buffer.subarray(0, 12).equals(signature);
}
Go
func IsWK5(data []byte) bool {
signature := []byte{0x00, 0x00, 0x1A, 0x00, 0x02, 0x10, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00}
if len(data) < 12 {
return false
}
return bytes.Equal(data[:12], signature)
}
API Endpoint
GET
/api/v1/wk5
curl https://filesignature.org/api/v1/wk5