WordPerfect text and graphics file

application/vnd.wordperfect

Safe

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

The WordPerfect text and graphics file format is a proprietary document specification developed by the WordPerfect Corporation for its version 5.x software suite. It was primarily utilized for generating complex business reports, legal documentation, and manuscripts that required precise formatting control and embedded graphical elements. This legacy format is now considered obsolete, though it is frequently encountered in digital archives and requires specialized conversion tools or legacy-aware productivity suites for data access.

Extension

.wp5

MIME Type

application/vnd.wordperfect

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .wp5 files in Python

Python
def is_wp5(file_path: str) -> bool:
    """Check if file is a valid WP5 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 .wp5 files in Node.js

Node.js
function isWP5(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 IsWP5(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/wp5
curl https://filesignature.org/api/v1/wp5

Related Formats