How to save oullook email as text format
    조회 수: 4 (최근 30일)
  
       이전 댓글 표시
    
As below, I can save oullook email in msg format, but I don't know how to save it in text formati.
Please advise me.
objol = actxserver('outlook.Application'); 
objNameSpace = objol.GetNamespace('MAPI');   
objInbox = objNameSpace.GetDefaultFolder('olFolderInbox');  
objMails  = objInbox.Items;
t_filePath = fullfile(pwd, 'test');
objMails.Item(1).SaveAs([t_filePath, '.msg'])
댓글 수: 0
채택된 답변
  Mario Malic
      
 2023년 9월 21일
        
      편집: Mario Malic
      
 2023년 9월 21일
  
      Hi,
objol = actxserver('outlook.Application'); 
objNameSpace = objol.GetNamespace('MAPI');   
objInbox = objNameSpace.GetDefaultFolder('olFolderInbox');  
objMails  = objInbox.Items;
objMail = objMails.GetFirst; % Use other methods to traverse through items
mailBody = objMail.Body;
t_filePath = fullfile(pwd, 'test.txt');
fid = fopen(t_filePath, "w");
if fid ~= -1
    fprintf(fid, "%s", mailBody);
    fclose(fid);
end
댓글 수: 3
  Mario Malic
      
 2023년 9월 21일
				What you should look for is the Component Object Model (COM) (or API?) for Outlook and read what are the properties and methods available for particular class.
For example, class for mail is MailItem, here is a link https://learn.microsoft.com/en-us/office/vba/api/outlook.mailitem the properties that you are looking for are there. So you should construct string array or char array like in my answer above. For example:
if fid ~= -1
    fprintf(fid, "%s\n", objMail.SenderEmailAddress)
    fprintf(fid, "%s\n", objMail.Subject)
    fprintf(fid, "%s\n", objMail.ReceivedTime)
    fprintf(fid, "%s\n", objMail.Body)
    fclose(fid);
end
I haven't tested it, it might fail, but this is the general idea. You can optimize it by  constructing a complete data first and then just use fprintf once to write the data to file as this way might be slow if you have to process a lot of data.
추가 답변 (0개)
참고 항목
카테고리
				Help Center 및 File Exchange에서 Standard File Formats에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

