Advertisement
kijato

renameEML.cs

Nov 9th, 2020
2,147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.72 KB | None | 0 0
  1. /*
  2. Fordítóprogram:
  3.     https://www.nuget.org/packages/Microsoft.Net.Compilers.Toolset/3.8.0-5.final
  4. Assembly:
  5.     https://www.nuget.org/packages/MsgReader/
  6. Fordítás:
  7.     csc.exe -target:exe -platform:x64 -r:MsgReader.dll renameEML.cs
  8. Használat:
  9.     renameEML.exe <fájlnév>.eml
  10. */
  11.  
  12. using System;
  13. using System.Text;
  14. using System.Text.RegularExpressions;
  15. using System.IO;
  16. using MsgReader;
  17.  
  18. public class Program {
  19.  
  20.     public static void Main(string[] args) {
  21.  
  22.         if (args.Length == 0) {
  23.             Console.WriteLine("Paraméterként adj meg egy fájlnevet!");
  24.             return;
  25.         }
  26.  
  27.         var fileInfo = new FileInfo(args[0]);
  28.        
  29.         if ( ! File.Exists(fileInfo.Name) ) {
  30.             Console.WriteLine("Paraméterként megadott fájl nem lézetik...!");
  31.             return;
  32.         }
  33.            
  34.         var eml = MsgReader.Mime.Message.Load(fileInfo);
  35.  
  36.         var subject = eml.Headers.Subject;
  37.        
  38.         if ( eml.Headers == null || eml.Headers.Subject == null ) {
  39.             Console.WriteLine("A levél nem tartalmaz 'Fejlécet', vagy 'Tárgy' mezőt, ezért átugrom!");
  40.         }
  41.        
  42.         // a csere csak egyszer fut le...!
  43.         subject = Regex.Replace(subject, @"[<>\\:/|?*]", "");
  44.  
  45.         if ( File.Exists(subject+".eml") ) {
  46.             Console.WriteLine("A '"+subject+".eml"+"' nevű fájl már létezik, nem írom felül!");
  47.         } else {
  48.             File.Move(fileInfo.Name, subject+".eml");
  49.             Console.WriteLine("'" + fileInfo.Name + "' -> '"+subject+".eml"+"'");
  50.         }
  51.  
  52.         /*if (eml.Headers != null) {
  53.             if (eml.Headers.To != null) {
  54.                 foreach (var recipient in eml.Headers.To) { var to = recipient.Address; }
  55.             }
  56.         }*/
  57.         //if (eml.TextBody != null) {   var textBody = Encoding.UTF8.GetString(eml.TextBody.Body); }
  58.         //if (eml.HtmlBody != null) {   var htmlBody = Encoding.UTF8.GetString(eml.HtmlBody.Body); }
  59.  
  60.     }
  61.  
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement