Sample code for 30+ languages & platforms
PowerBuilder

Detect the Primary Language Group of an Email

See more Email Object Examples

Demonstrates the read-only Chilkat Email.Language property, which identifies the primary language group detected in the email's subject and body text, returning values such as latin1, russian, or japanese. The Subject has the greatest influence on the result. This example sets English text and reads the detected language.

Background: This is a heuristic based on Unicode: every character belongs to a Unicode "block" (Latin, Cyrillic, Greek, CJK, etc.), and Chilkat classifies the message by which blocks its characters fall into. The goal is practical — choosing a suitable charset/encoding for the text — not formal linguistic detection. It does not read the MIME Content-Language header, and it ignores characters in address and other header fields.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
oleobject loo_Email

//  Demonstrates the read-only Email.Language property, a character-based
//  heuristic that identifies the primary language group detected in the
//  email's subject and body text (e.g. latin1, russian, japanese, ...).

loo_Email = create oleobject
li_rc = loo_Email.ConnectToNewObject("Chilkat.Email")
if li_rc < 0 then
    destroy loo_Email
    MessageBox("Error","Connecting to COM object failed")
    return
end if

loo_Email.Subject = "Hello, this is an English subject line."
loo_Email.Body = "This is the body text, written in English."

//  The Subject has the greatest influence on the result.
Write-Debug "Language = " + loo_Email.Language


destroy loo_Email