W60
application/vnd.wordperfect
Magic Bytes
Offset: 0
61 70 70 6C 69 63 61 74 69 6F 6E 2F 76 6E 64 2E 77 6F 72 64 70 65 72 66 65 63 74 3B
W60 is a proprietary document file format developed by Corel (formerly WordPerfect Corporation) for the WordPerfect 6.0 word processing suite. It was primarily used for creating and storing complex text documents featuring advanced formatting, tables, and integrated graphics on DOS and early Windows platforms. Now considered an obsolete legacy format, it is generally safe for modern systems, although viewing the content typically requires specialized conversion software or older word processing applications.
Validation Code
How to validate .w60 files in Python
Python
def is_w60(file_path: str) -> bool:
"""Check if file is a valid W60 by magic bytes."""
signature = bytes([0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B])
with open(file_path, "rb") as f:
return f.read(28) == signature
How to validate .w60 files in Node.js
Node.js
function isW60(buffer: Buffer): boolean {
const signature = Buffer.from([0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B]);
return buffer.subarray(0, 28).equals(signature);
}
Go
func IsW60(data []byte) bool {
signature := []byte{0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B}
if len(data) < 28 {
return false
}
return bytes.Equal(data[:28], signature)
}
API Endpoint
GET
/api/v1/w60
curl https://filesignature.org/api/v1/w60