>백엔드 개발 >C++ >MemoryStream의 파일을 MailMessage에 첨부하려면 어떻게 해야 합니까?

MemoryStream의 파일을 MailMessage에 첨부하려면 어떻게 해야 합니까?

Susan Sarandon
Susan Sarandon원래의
2025-01-04 13:32:40354검색

How Can I Attach Files from a MemoryStream to a MailMessage?

MailMessage의 파일 첨부를 위한 메모리 스트림에 액세스

MemoryStream의 파일을 MailMessage에 첨부하면 중간 파일 저장이 필요하지 않습니다. 이 기사에서는 이 문제에 대한 해결책을 살펴봅니다.

이를 달성하기 위해 StreamWriter를 사용하여 MemoryStream이 생성되고 파일 콘텐츠로 채워집니다. 파일이 메모리에 저장되면 해당 위치가 처음으로 재설정됩니다.

그런 다음 MimeContentType은 파일 형식(예: 일반 텍스트의 경우 text/plain)에 따라 정의됩니다. 마지막으로 MemoryStream을 사용하여 새 첨부 파일이 생성되고 파일 이름이 할당됩니다.

다음은 예제 코드 조각입니다.

System.IO.MemoryStream ms = new System.IO.MemoryStream();
System.IO.StreamWriter writer = new System.IO.StreamWriter(ms);
writer.Write("Hello its my sample file");
writer.Flush();
writer.Dispose();
ms.Position = 0;

System.Net.Mime.ContentType ct = new System.Net.Mime.ContentType(System.Net.Mime.MediaTypeNames.Text.Plain);
System.Net.Mail.Attachment attach = new System.Net.Mail.Attachment(ms, ct);
attach.ContentDisposition.FileName = "myFile.txt";

이 접근 방식을 사용하면 메모리에서 직접 파일을 첨부할 수 있으므로 별도의 작업이 필요하지 않습니다. 디스크에 중간 파일 저장용. 다양한 파일 형식을 수용하고 적절한 파일 이름 확장자를 보장하기 위해 다양한 MimeType을 지정할 수 있습니다.

위 내용은 MemoryStream의 파일을 MailMessage에 첨부하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.