using System;
using System.Collections.Generic;
using System.IO ;
using System.Linq;
using System.Text;
using System.Windows.Forms ;

namespace CzatDB
{
   static  class Pliki
   {

    public static bool ZapiszPlik(string sciezka, string s)
    {
       try
       {
          using (StreamWriter sw = new StreamWriter(sciezka))
          {
             sw.Write(s);
             return true;
          }
       }
       catch { return false; }
       //return true;
    }

    /// <summary>Zwraca łańcuch reprezentujący zawartość pliku tekstowego.    
    /// </summary>
    /// <param name="nazwaPliku">Ścieżka do pliku tekstowego.</param>
    /// <returns>Tekst</returns>
    public static string CzytajPlikTekstowy(string nazwaPliku)
    {
       StringBuilder tekst = new StringBuilder("");       
       try
       {
          using (StreamReader sr = new StreamReader(nazwaPliku))
          {
             string wiersz;
             while ((wiersz = sr.ReadLine()) != null)
                tekst.Append( wiersz);
          }
          return tekst.ToString();
       }
       catch (Exception e)
       {
          MessageBox.Show("Błąd odczytu pliku " + nazwaPliku + " (" + e.Message + ")", "Czytaj Plik tekstowy");
          return null;
       }
    }

    public static List<string> CzytajPlikTekstowy(string nazwaPliku, bool b)
    {
       b = false;
       List<string> text = new List<string>();
       try
       {
          using (StreamReader sr = new StreamReader(nazwaPliku,System.Text.Encoding.Default,true  ))
          {
             string wiersz;
             while ((wiersz = sr.ReadLine()) != null)
                text.Add(wiersz);//tekst += wiersz;
          }
          return text;
       }
       catch (Exception e)
       {
          MessageBox.Show("Błąd odczytu pliku " + nazwaPliku + " (" + e.Message + ")", "Czytaj Plik tekstowy");
          return null;
       }
    }
      /// <summary>Zwraca rozmiar pliku</summary>
      /// <param name="filePath">ścieżka z nazwą pliku</param>
      /// <returns>Int64 rozmiar pliku</returns>
      public static Int64  getFileSize(string filePath)
      {
         try
         {
            FileInfo f=new FileInfo(filePath);
            return f.Length;
         }
         catch(Exception ex)
         {
            MessageBox.Show(ex.ToString());
         }
         return -1;
      }
   }//end class
}