isotonicq

Untitled

Aug 4th, 2017
101
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  public sealed class BankDownloader
  2.     {
  3.         private string _path;
  4.         public bool Controller()
  5.         {
  6.             _path= Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), @"temp.txt");
  7.             return (File.Exists(_path)) ? UpdateFile() : DownloadFile();
  8.         }
  9.  
  10.         public bool DownloadFile()
  11.         {
  12.             using (var connector = new System.Net.WebClient())
  13.             {
  14.                 try
  15.                 {
  16.                     var encodedPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),@"tempEncoded.txt");
  17.  
  18.                     connector.DownloadFile(@"http://www.nbp.pl/banki_w_polsce/ewidencja/dz_bank_jorg.txt",encodedPath);
  19.  
  20.                     using (var sw = new StreamWriter(_path))
  21.                     {
  22.                         sw.WriteLine($"{DateTime.Now}\n");
  23.                         sw.WriteLine(File.ReadAllText(encodedPath,Encoding.GetEncoding(852)));
  24.                     }
  25.  
  26.                     File.Delete(encodedPath);
  27.  
  28.                     return true;
  29.                 }
  30.                 catch { return false; }
  31.             }
  32.         }
  33.  
  34.         public bool UpdateFile()
  35.         {
  36.             if (DateTime.Parse(File.ReadAllLines(_path).First()) >= DateTime.Now.AddDays(-7)) return true;
  37.             RemoveFile();
  38.             return DownloadFile();
  39.         }
  40.  
  41.         public void RemoveFile()
  42.         {
  43.             File.Delete(_path);
  44.         }
  45.     }
RAW Paste Data