CWK
application/octet-stream
Magic Bytes
Offset: 0
02 00 5A 57 52 54 00 00 00 00 00 00 00 00 00 00
CWK is a proprietary document format created by Claris and later maintained by Apple Inc. for the AppleWorks productivity suite. It serves as a container for word processing, spreadsheet, database, and vector graphics data generated within the integrated software environment. Now considered an obsolete legacy format, CWK files typically require specialized conversion tools or legacy software emulation for accessibility on modern operating systems and contemporary productivity applications.
Validation Code
How to validate .cwk files in Python
Python
def is_cwk(file_path: str) -> bool:
"""Check if file is a valid CWK by magic bytes."""
signature = bytes([0x02, 0x00, 0x5A, 0x57, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00])
with open(file_path, "rb") as f:
return f.read(16) == signature
How to validate .cwk files in Node.js
Node.js
function isCWK(buffer: Buffer): boolean {
const signature = Buffer.from([0x02, 0x00, 0x5A, 0x57, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]);
return buffer.subarray(0, 16).equals(signature);
}
Go
func IsCWK(data []byte) bool {
signature := []byte{0x02, 0x00, 0x5A, 0x57, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
if len(data) < 16 {
return false
}
return bytes.Equal(data[:16], signature)
}
API Endpoint
GET
/api/v1/cwk
curl https://filesignature.org/api/v1/cwk