
Microsoft Outlook e altri client di posta elettronica popolari utilizzano EML(standard MIME RFC 822) come formato standard. EML è l’abbreviazione di posta elettronica o e-mail. Allo stesso modo, è un’estensione di file per un messaggio di posta elettronica salvato in un file nel protocollo Internet Message Format per i messaggi di posta elettronica. I file EML di solito contengono testo ASCII semplice per il corpo del messaggio principale, intestazioni e collegamenti ipertestuali e allegati. Tuttavia, c’è una minaccia associata al formato EML, ovvero che può essere un’e-mail di phishing e l’allegato potrebbe: Infettare il computer con malware se si apre l’allegato.
Inoltre, se salviamo una copia offline di questi file, il malware può facilmente influenzarli e i dati possono essere persi. Inoltre, per aprire i file EML, abbiamo bisogno di un’applicazione supportata (Microsoft Outlook 365, Microsoft Windows Mail, Mozilla Thunderbird, ecc.).Quindi una misura preventiva può essere la sua conversione nel formato MHT.
- API gratuita per l’elaborazione delle e-mail
- Da EML a MHT in C#
- Conversione da EML a MHT tramite cURL
API gratuita per l’elaborazione delle e-mail
Aspose.Email Cloud è la nostra API pluripremiata che offre le capacità di creare, manipolare e trasformare i formati di posta elettronica più diffusi in altri formati supportati. Quindi crea la tua soluzione di gestione della posta elettronica basata su cloud che supporta OAuth e invia messaggi di posta elettronica semplici o MIME con o senza allegati. Accedi all’API su qualsiasi piattaforma, inclusi Windows, Linux, macOS e in qualsiasi tipo di applicazione, ad esempio Desktop, Mobile, Web, ibrida, ecc.
Per utilizzare direttamente l’API all’interno di un linguaggio di programmazione, prova a utilizzare il nostro Cloud SDK specifico per il linguaggio, che è un wrapper attorno a Cloud SDK. In questo articolo, ci concentreremo sulla conversione dei file EML in formato MHT utilizzando Aspose.Email Cloud SDK per .NET. Per utilizzare l’SDK, devi avere uno dei framework .NET supportati (o compatibili con quelli supportati):
- .NET Framework 2.0
- .NET Framework 4.5.2
- .NETStandard 2.0
- MonoAndroide 6.0
- Xamarin.iOS 1.0
- Xamarin.Mac 2.0
Installazione
Per utilizzare Cloud SDK, il primo passo è la sua installazione. È disponibile per il download su NuGet e GitHub. Eseguire il seguente comando nella finestra del terminale per eseguire l’installazione per NuGet:
nuget install Aspose.Email-Cloud
Quando si utilizza .NET CLI:
dotnet add package Aspose.Email-Cloud
Se si utilizza Visual Studio, il pacchetto può essere installato anche tramite Package Manager Console. Eseguire il seguente comando:
PM> Install-Package Aspose.Email-Cloud

Gestore pacchetti NuGet – Visual Studio
Un altro approccio più semplice è installare l’SDK tramite NuGet Package Manager all’interno di Visual Studio IDE.
- Aprire Esplora soluzioni.
- Espandi il progetto e fai clic con il pulsante destro del mouse sulla cartella Pacchetti nella soluzione.
- Seleziona l’opzione Gestisci pacchetti NuGet…
- Fare clic sulla scheda Sfoglia e cercare “Aspose.Email-Cloud“
- Fare clic sul pacchetto Aspose.Email-Cloud, selezionare la versione appropriata nella scheda a destra e fare clic sul pulsante Aggiungi pacchetto

Abbonamento all’account cloud
Le nostre API sono accessibili solo a persone autorizzate perché i dati archiviati nell’archiviazione cloud sono accessibili tramite le API cloud. L’abbonamento è gratuito e non sono richiesti dettagli di pagamento anticipati. Esegui fino a 150 operazioni di elaborazione documenti gratuite. Quindi, una volta che sei soddisfatto delle capacità dell’API, potresti prendere in considerazione l’opzione di un abbonamento di licenza che può costare fino a $ 0,005 / chiamata API. Per ulteriori dettagli, visita Prezzi.
Ora procedi con la creazione dell’account visitando Aspose.Cloud dashboard. Non sono richiesti dati di carte di credito o altri dettagli di pagamento. Se hai un account GitHub o Google, registrati semplicemente o clicca sul pulsante crea un nuovo account e fornisci le informazioni richieste. Ora accedi alla dashboard utilizzando le credenziali ed espandi la sezione Applicazioni dalla dashboard e scorri verso il basso fino alla sezione Credenziali cliente per vedere i dettagli ID cliente e Segreto cliente.

Immagine 3: Credenziali del cliente nella dashboard di Aspose.Cloud.
Da EML a MHT in C#
Per convertire il file EML in formato MHT utilizzando C# .NET, seguire i passaggi indicati di seguito.
- Il primo passo è creare un oggetto della classe EmailCloud passando i dettagli ClientID e Client Secret come argomenti
- In secondo luogo, leggere il file di posta elettronica di origine nell’istanza File.OpenRead
- In terzo luogo, creare un’istanza di EmailConvertRequest durante il passaggio del formato del file di input, del formato del file risultante e dell’oggetto stream contenente il file EML di input
- Ora chiama il metodo Email.Convert(…) per avviare l’operazione di conversione
- Infine, chiama il metodo personalizzato per salvare il file risultante sull’unità locale utilizzando l’istanza File.Create
// Per esempi completi e file di dati, visitare
https://github.com/aspose-email-cloud/aspose-email-cloud-dotnet
// Ottieni le credenziali del cliente da https://dashboard.aspose.cloud/
string clientSecret = "d757548a9f2558c39c2feebdf85b4c44";
string clientID = "4db2f826-bf9c-42e7-8b2a-8cbca2d15553";
// creare un'istanza di EmailCloud Api
var emailApi = new EmailCloud(clientSecret, clientID);
// nome del file EML di origine
string name = "sample.eml";
// nome del file MHT risultante
string resultantFile = "converted.mht";
// formato del file di posta elettronica di input
string fromFormat = "eml";
// formato del file risultante
string toFormat = "Mhtml";
try
{
// leggere la sorgente EML per trasmettere l'oggetto
using (var file = System.IO.File.OpenRead(@"C:\Users\shahbnay\Downloads\" + name))
{
// crea un'istanza di richiesta EmailConvert passando formati di input, output e flusso di file
var convertRequest = new EmailConvertRequest(fromFormat, toFormat, file);
// Eseguire l'operazione di conversione
var response = emailApi.Email.Convert(convertRequest);
// stampa messaggio di successo se la conversione è riuscita
if (response != null && response.Equals("OK"))
{
// stampa il messaggio di successo
Console.WriteLine("Successfully converted EML to MHT !");
Console.ReadKey();
}
// salva il flusso di file risultante sull'unità locale
saveToDisk(response, @"C:\Users\shahbnay\Downloads\" + resultantFile);
}
}catch (Exception ex)
{
// stampa l'eccezione nella console
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// metodo personalizzato per salvare l'output sull'unità di sistema
static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}

Immagine 4: - Anteprima della conversione da EML a MHT.
I file utilizzati nell’esempio sopra possono essere scaricati da sample.eml e converted.mht.
Conversione da EML a MHT tramite cURL
Poiché Aspose.Email Cloud è sviluppato secondo l’architettura REST, è facilmente accessibile tramite comandi cURL. Utilizzare l’applicazione terminale/prompt dei comandi per accedere alle API. Quindi il primo passaggio è generare un token di accesso JWT basato sulle credenziali client specificate su Aspose.Cloud dashboard. Eseguire il seguente comando per generare il token JWT.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4db2f826-bf9c-42e7-8b2a-8cbca2d15553&client_secret=d757548a9f2558c39c2feebdf85b4c44" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Ora discuteremo i passaggi per usare il comando cURL per convertire i file .eml già disponibili nell’archiviazione Cloud in formato MHTML. L’output viene salvato sul sistema usando il parametro -o.
curl -X GET "https://api.aspose.cloud/v4.0/email/as-file?fileName=sample.eml&format=Mhtml" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-o resultant.mht
Nel caso in cui sia necessario eseguire la conversione del file .eml da caricare dall’unità locale, provare a utilizzare il seguente comando cURL:
curl -X PUT "https://api.aspose.cloud/v4.0/email/convert?fromFormat=Eml&toFormat=Mhtml" \
-H "accept: multipart/form-data" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: multipart/form-data" \
-d @sample.eml \
-o converted.mht
Conclusione
In questo articolo, abbiamo evidenziato le funzionalità di Aspose.Email Cloud per l’elaborazione di formati di posta elettronica popolari. L’API consente di creare applicazioni di manipolazione di posta elettronica per applicare segnali di pericolo ai messaggi di posta elettronica, applicare allegati di posta elettronica e scaricare allegati di posta elettronica e molto altro. Abbiamo discusso i passaggi su come eseguire la conversione dei file EML in MHT utilizzando C# .NET e i comandi cURL. Inoltre, .NET Cloud SDK è sviluppato secondo la licenza MIT. Scaricali e personalizzali in modo assolutamente gratuito. Il codice sorgente completo è disponibile su GitHub.
Abbiamo anche fornito una swagger view delle API Cloud in modo che tu possa testare le API all’interno di un browser web. Inoltre, se riscontri problemi o hai altre domande, non esitare a contattarci tramite il forum di assistenza clienti gratuito.
Articoli correlati
Ti consigliamo inoltre di visitare i seguenti link per saperne di più: