怎樣修改eml文件的源代碼
『壹』 用VBA程序把後綴eml的文件改為TXT文件,請教如何做
Sub tt()
Dim p$, f$, txt$
p = ThisWorkbook.Path & "\" '換成你設定的路徑
f = Dir(p & "*.eml")
If f <> "" Then
Do Until f = ""
txt = Replace(f, "eml", "txt")
Name p & f As p & txt
f = Dir
Loop
End If
End Sub
『貳』 java 解析 eml的源代碼
//從EML文件得到MimeMessage對象
MimeMessagemessage=newMimeMessage(session,newFileInputStream(emlFile));
(Messagemessage)throwsException{
returnMimeUtility.decodeText(message.getSubject());
}
(Messagemessage)throwsException{
StringemailSender=null;
Address[]addresses=message.getFrom();
if(addresses==null||addresses.length<1){
("該郵件沒有發件人");
}
//獲得發件人
InternetAddressaddress=(InternetAddress)addresses[0];
StringsenderName=address.getPersonal();
if(senderName!=null){
senderName=MimeUtility.decodeText(senderName);
emailSender=senderName+"<"+address.getAddress()+">";
}else{
senderName=address.getAddress();
}
returnemailSender;
}
(Messagemessage,Message.RecipientTyperecipientType)throwsException{
StringBuilderbuilder=newStringBuilder();
Address[]addresses=null;
if(recipientType==null){
addresses=message.getAllRecipients();
}else{
addresses=message.getRecipients(recipientType);
}
if(addresses==null||addresses.length<1){
("該郵件沒有收件人");
}
for(Addressaddress:addresses){
InternetAddressiAddress=(InternetAddress)address;
builder.append(iAddress.toUnicodeString()).append(",");
}
returnbuilder.deleteCharAt(builder.length()-1).toString();
}
(Messagemessage,Stringpattern)throwsException{
StringsendDateString=null;
if(pattern==null||"".equals(pattern.trim())){
pattern="yyyy年MM月dd日EHH:mm";
}
DatesendDate=message.getSentDate();
sendDateString=newSimpleDateFormat(pattern).format(sendDate);
returnsendDateString;
}
(Partpart)throwsException{
booleanflag=false;
if(part!=null){
if(part.isMimeType("multipart/*")){
MimeMultipartmp=(MimeMultipart)part.getContent();
for(inti=0;i<mp.getCount();i++){
BodyPartbodyPart=mp.getBodyPart(i);
Stringdisposition=bodyPart.getDisposition();
if(disposition!=null&&(Part.ATTACHMENT.equalsIgnoreCase(disposition)
||Part.INLINE.equalsIgnoreCase(disposition))){
flag=true;
}elseif(bodyPart.isMimeType("multipart/*")){
flag=containsAttachment(bodyPart);
}else{
StringcontentType=bodyPart.getContentType();
if(contentType.indexOf("application")!=-1){
flag=true;
}
if(contentType.indexOf("name")!=-1){
flag=true;
}
}
if(flag)
break;
}
}elseif(part.isMimeType("message/rfc822")){
flag=containsAttachment((Part)part.getContent());
}
}
returnflag;
}
publicstaticbooleanisSeen(Messagemessage)throwsException{
if(message==null){
thrownewMessagingException("Messageisempty");
}
returnmessage.getFlags().contains(Flags.Flag.SEEN);
}
(Messagemessage)throwsException{
if(message==null){
thrownewMessagingException("Messageisempty");
}
booleanreplaySign=false;
String[]headers=message.getHeader("Disposition-Notification-To");
if(headers!=null&&headers.length>0){
replaySign=true;
}
returnreplaySign;
}
(Messagemessage)throwsException{
if(message==null){
thrownewMessagingException("Messageisempty");
}
Stringpriority="普通";
String[]headers=message.getHeader("X-Priority");
if(headers!=null&&headers.length>0){
StringmailPriority=headers[0];
if(mailPriority.indexOf("1")!=-1||mailPriority.indexOf("High")!=-1){
priority="緊急";
}elseif(mailPriority.indexOf("5")!=-1||mailPriority.indexOf("Low")!=-1){
priority="低";
}else{
priority="普通";//3或者Normal;
}
}
returnpriority;
}
(Partpart,StringBuildercontent)throwsException{
if(part==null){
thrownewMessagingException("Messagecontentisempty");
}
=part.getContentType().indexOf("name")>0;
if(part.isMimeType("text/*")&&containsTextInAttachment){
content.append(part.getContent().toString());
}elseif(part.isMimeType("message/rfc822")){
getMailTextContent((Part)part.getContent(),content);
}elseif(part.isMimeType("multipart/*")){
Multipartmp=(Multipart)part.getContent();
for(inti=0;i<mp.getCount();i++){
BodyPartbodyPart=mp.getBodyPart(i);
getMailTextContent(bodyPart,content);
}
}elseif(part.isMimeType("image/*")){
//TODOpart.getInputStream()獲得輸入流然後輸出到指定的目錄
}else{
//TODO其它類型的contentType,未做處理,直接輸出
content.append(part.getContent().toString());
}
}
(Partpart,StringdestDir)throwsException{
if(part==null){
thrownewMessagingException("partisempty");
}
//復雜的郵件包含多個郵件體
if(part.isMimeType("multipart/*")){
Multipartmp=(Multipart)part.getContent();
//遍歷每一個郵件體
for(inti=0;i<mp.getCount();i++){
BodyPartbodyPart=mp.getBodyPart(i);
//bodyPart也可能有多個郵件體組成
Stringdisposition=bodyPart.getDisposition();
if(disposition==null&&(Part.ATTACHMENT.equalsIgnoreCase(disposition)
||Part.INLINE.equalsIgnoreCase(disposition))){
InputStreamin=bodyPart.getInputStream();
saveFile(in,destDir,decodeText(bodyPart.getFileName()));
}elseif(bodyPart.isMimeType("multipart/*")){
saveAttachment(bodyPart,destDir);
}else{
StringcontentType=bodyPart.getContentType();
if(contentType.indexOf("name")!=-1||contentType.indexOf("application")!=-1){
saveFile(bodyPart.getInputStream(),destDir,decodeText(bodyPart.getFileName()));
}
}
}
}elseif(part.isMimeType("message/rfc822")){
saveAttachment((Part)part.getContent(),destDir);
}
}
publicstaticvoidsaveFile(InputStreamin,StringdestDir,StringfileName)throwsException{
FileOutputStreamout=newFileOutputStream(newFile(destDir+fileName));
byte[]buffer=newbyte[1024];
intlength=0;
while((length=in.read(buffer))!=-1){
out.write(buffer,0,length);
}
out.close();
in.close();
}
publicstaticStringdecodeText(StringencodedText)throwsException{
if(encodedText==null||"".equals(encodedText.trim())){
return"";
}else{
returnMimeUtility.decodeText(encodedText);
}
}
『叄』 eml格式的文件怎麼轉換成html格式的文件
不知道你所說的變化是圖標變了還是文件後綴名變了。如果只是圖標變了,可能是因為默認打開程序的問題;如果後綴名變了,才是格式變了。
判斷後綴名是不是變了,工具--文件夾選項--查看,裡面有一項「隱藏已知文件類型的擴展名」,取消這一選項,就能看出文件的後綴名是不是改變了。
如果沒有改變(仍然是*.html),就是前者,右鍵點擊文件--打開方式--選擇程序--選擇IE,記得勾選「始終使用選擇的程序打開」,圖標就會變回來了。
如果已經改變了(*.eml),可以用批量轉換軟體將文件後綴名該掉。比如這個http://www.bestshareware.net/download/emltohtml-converter.htm
『肆』 如何編輯 eml 格式的郵件並
在Foxmail中選定郵件,然後單擊菜單「文件」-「導出」,在隨後打開的對話框中選擇「保存類型」為「Outlook郵件(*.eml)」,輸入文件名,單擊「確定」完成郵件輸出。
『伍』 怎樣編輯eml文件
如果安裝的第三方電子郵件程序具有相關聯的 .eml 文件類型,則會發生此現象。要解決此問題,請使用 /reg 選項運行 Msimn 可執行文件,強制 Outlook Express 重新注冊其文件類型,或者在「我的電腦」中重新注冊 .eml 文件類型。
要使用 /reg 選項運行 Msimn 可執行文件,請執行以下操作: 退出 Outlook Express。
單擊開始,然後單擊運行。 在打開框中,鍵入 msimn /reg,然後單擊確定。要在「我的電腦」中重新注冊 .eml 文件類型,請執行以下操作: 在桌面上,雙擊我的電腦。 在工具菜單上,單擊文件夾選項。 單擊文件類型選項卡。
在「已注冊的文件類型」下單擊 EML Outlook Express Mail Message,然後單擊高級。 單擊 Open,然後單擊編輯。 在「用於執行操作的應用程序」框中鍵入下面一行: "C:Program FilesOutlook ExpressMSIMN.EXE" /eml:%1單擊確定,再次單擊確定,然後單擊關閉
『陸』 電子郵件文件eml文件修改
沒聽說過,自己寫吧,base64編碼
『柒』 eml 文件如何做
EML格式是各類電子郵件軟體中所支持的一種通用格式
常見的eml文件屬於郵件文件格式
eml文件是Outlook郵件的文件格式。
打開軟體:Outlook Express。一般情況下(當系統默認郵件處理程序是Outlook Express時)雙擊時會由Outlook Express打開,也可以在該文件上單擊右鍵,選擇:發送到->郵件接收者,OK!當然,還可以打開OE5並將窗口設置為常規大小,再將該eml文件拖到OE的收件箱並松開滑鼠就可以了。
若沒有Outlook Express,可將.eml文件擴展名改為.htm,用IE打開試試,有時能打開。若不能,就只能裝Outlook Express試試了。