Aspose.Email FOSS for .NET은(는) Microsoft Outlook .msg 파일, Compound File Binary (CFB) 컨테이너 및 EML 메시지를 다루기 위한 MIT 라이선스, 의존성 없는 C# 라이브러리입니다. 단일 NuGet 패키지를 추가하면 Microsoft Outlook이나 어떤 독점 런타임도 설치하지 않고 즉시 이메일 메시지를 읽고, 만들고, 처리할 수 있습니다.
라이브러리는 두 가지 수준의 접근을 제공합니다. 낮은 수준에서는 CfbReader과 CfbWriter가 CFB 바이너리 컨테이너에 대한 완전한 제어를 제공하며 — 디렉터리 항목을 탐색하고, 스토리지 노드와 스트림 데이터를 읽고 쓰며, 원시 섹터 레이아웃을 검사합니다. MsgReader과 MsgWriter는 CFB 위에 있는 MSG 형식을 처리하여 MAPI 속성 스트림, 수신자 테이블 및 첨부 파일 하위 스토리지를 노출합니다. 높은 수준에서는 MapiMessage를 사용하여 처음부터 새 메시지를 만들고, 제목, 본문, 발신자 및 수신자를 읽으며, 첨부 파일을 관리하고, 내장된 MIME 구현을 통해 MSG와 EML 형식 간에 변환할 수 있습니다.
라이브러리는 .NET 8.0 이상을 대상으로 하며 네이티브 종속성이 없어 Windows, Linux, macOS, Docker 컨테이너 및 서버리스 함수에 적합합니다. 추가 기능 및 상업적 지원은 Aspose.Email for .NET을(를) 참조하십시오.
CfbReader.FromFile(), CfbReader.FromStream(), 또는 new CfbReader(data)를 통해 로드합니다.IterStorages(), IterStreams(), IterChildren(), 및 IterTree()을 사용하여 스토리지, 스트림 및 자식을 반복합니다.ResolvePath(names)을 사용해 중첩된 스토리지 계층을 탐색하여 이름 체인으로 특정 스트림을 찾습니다.CfbDocument을 사용해 CFB 문서를 프로그래밍 방식으로 구축하고 CfbWriter.ToBytes() 또는 CfbWriter.WriteFile()을 통해 바이트 또는 파일로 직렬화합니다.CfbStorage 및 CfbStream 노드를 첨부합니다..msg 파일을 위한 컨테이너 형식입니다. 직접적인 CF B 접근은 법의학 검사를 가능하게 하고 수리합니다.MsgReader.FromFile() 또는 MsgReader.FromStream()으로 Outlook MSG 파일들을 열고, 기본 MAPI 속성 스트림과 수신자 레코드 및 첨부 부 저장소에 액세스합니다.MsgDocument에서 MSG 파일 생성, MsgWriter.ToBytes() 또는 MsgWriter.WriteFile().MsgStorage, MsgStream 및 MsgStorage.FindStream()를 통해 상위 레벨의 속성 스트림과 이름 붙여진 속성과 첨부 데이터를 읽어보세요.MsgStorage.FindStream() 및 MsgStorage.FindStorage()을 사용하여 이름의 하위 항목을 찾아보세요..msg 파일들을 대량 읽으며, 메타데이터나 첨부 파일을 추출합니다..msg 파일을 프로그래밍 방식으로 구축하고 Outlook 기반의 메일 시스템에 전송합니다.MapiMessage.Create(subject, body)와 함께 작성하고, SenderName, SenderEmailAddress, HtmlBody을 설정합니다.AddRecipient()를 통해 이메일 주소와 표시 이름으로 To, Cc, Bcc 수신자를 첨부합니다.AddAttachment()을 사용하여 파일 및 스트림 첨부 파일을 추가하거나, Filename, MimeType, ContentId, Data을 사용하여 MapiAttachment 객체를 직접 생성합니다.message.Save() 또는 message.Save(stream)로 직렬화하고, MapiMessage.FromFile() 또는 MapiMessage.FromStream()로 다시 로드합니다.message.Attachments를 반복하여 각 attachment.Data을 디스크에 저장합니다.message.Subject, message.Body , message.SenderEmailAddress 및 message.Recipients에 액세스합니다..eml 파일(RFC 5322 / MIME)을 MapiMessage.LoadFromEml(stream)를 통해 전체 MapiMessage 객체로 구문 분석합니다.MapiMessage을 message.SaveToEml() 또는 message.SaveToEml(stream)를 사용하여 MIME 형식으로 직렬화합니다..eml 및 .msg 파일의 혼합된 아카이브를 하나의 형식으로 표준화합니다..eml 장비를 시험에서 생성하고 데이터 손실 없이 MSG 회전 수명을 확인합니다.스트림에서 Outlook MSG 파일을 열고 주제를 인쇄합니다. Microsoft Outlook가 필요하지 않습니다.
using System.IO;
using Aspose.Email.Foss.Msg;
using var stream = File.OpenRead("sample.msg");
var message = MapiMessage.FromStream(stream);
Console.WriteLine(message.Subject);
전송자, 수신자와 첨부 파일을 포함해 전체 이메일을 작성하고 MSG 파일로 적어넣습니다.
using System.IO;
using Aspose.Email.Foss.Msg;
var message = MapiMessage.Create("Hello", "Body");
message.SenderName = "Alice";
message.SenderEmailAddress = "alice@example.com";
message.AddRecipient("bob@example.com", "Bob");
using var attachmentStream = new MemoryStream("abc"u8.ToArray());
message.AddAttachment("note.txt", attachmentStream, "text/plain");
using var output = File.Create("hello.msg");
message.Save(output);
표준 .eml 파일을 로드하고 내장된 MIME 파서로 Outlook .msg 파일로 저장합니다.
using System.IO;
using Aspose.Email.Foss.Msg;
using var input = File.OpenRead("message.eml");
var message = MapiMessage.LoadFromEml(input);
using var msgOutput = File.Create("message.msg");
message.Save(msgOutput);
using var emlOutput = File.Create("roundtrip.eml");
message.SaveToEml(emlOutput);