Very good question and, by coincidence, a colleague from IBM Japan, Yasuhiro Onoda, solved this just last week.
Here is the response from Yasuhiro:
But I found mail from --file-body does not work well if a file contains multi byte characters.
(In my cases, I need to write a mail in Japanese. )
I checked the Mail.py file.
These lines are used to read a file.
-----------------------
f=open(bodyFile)
bodyLines=f.readlines()
-----------------------
But the readlines method of Jython does not work well to read multi byte characters.
So I replaced the above lines with the following.
-----------------------
f= BufferedReader(InputStreamReader(FileInputStream(bodyFile)))
bodyLines=[]
line = f.readLine()
while(line != None):
bodyLines.append(line + "\n")
line = f.readLine()
-----------------------
I also added some classes to this line,
-----------------------
from java.io import File,FileInputStream,InputStreamReader,BufferedReader # for multi-byte capable
-----------------------
It may be dirty, but works fine for my Japanese mails,
So you can get Japanese mails working.
I included the change in the upcoming 4.2.1 release. The new version is in the release process and will be released as soon as it's approved.
-Sami Salkosuo