Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.IO;
- using System.Xml.Serialization;
- using System.Configuration;
- namespace zadanie_2
- {
- class Program
- {
- static void Main(string[] args)
- {
- String sciezka = "C:\\Users\\Damian\\Documents\\Visual Studio 2015\\Projects\\zadanie 2\\zadanie 2\\Plik.txt";
- String sciezkaXML = "C:\\Users\\Damian\\Documents\\Visual Studio 2015\\Projects\\zadanie 2\\zadanie 2\\plikXML.xml";
- String text = "";
- int przesuniecie_cezar = 3;
- bool flag = true;
- int i = 0;
- Kartoteka<Pracownik> kart1 = new Kartoteka<Pracownik>();
- for (i = 0; flag == true; i++)
- {
- Console.WriteLine("Podaj imie");
- String imieTemp = Console.ReadLine();
- imieTemp = cezarCode(imieTemp, przesuniecie_cezar);
- Console.WriteLine("Podaj nazwisko");
- String nazwiskoTemp = Console.ReadLine();
- nazwiskoTemp = cezarCode(nazwiskoTemp, przesuniecie_cezar);
- Console.WriteLine("Podaj wynagrodzenie");
- int wynagrodzenieTemp = int.Parse(Console.ReadLine());
- Console.WriteLine("Podaj lata pracy");
- int lata_pracyTemp = int.Parse(Console.ReadLine());
- Console.WriteLine("Podaj stanowisko");
- String stanowiskoTemp = Console.ReadLine();
- kart1.AddPracownik(new Pracownik { imie = imieTemp, nazwisko = nazwiskoTemp, wynagrodzenie = wynagrodzenieTemp, lata_pracy = lata_pracyTemp, stanowisko = stanowiskoTemp });
- Console.WriteLine("Czy dodać następnego pracownika T/N");
- String temp1 = Console.ReadLine();
- if (temp1 == "N" || temp1 == "n")
- {
- flag = false;
- }
- }
- show(i, kart1);
- Console.WriteLine("\n" + "---PLIK TXT---");
- saveTXT(sciezka, text, i, kart1);
- readTXT(sciezka);
- Console.WriteLine("\n" + "---PLIK XML---");
- writeXML(sciezkaXML, kart1); // zapis do xml
- Kartoteka<Pracownik> kartotekaXML = getXML(sciezkaXML); //pobranie xml
- showDecoded(i, kartotekaXML,przesuniecie_cezar); //wyswietlamy kartoteke stworzonej z pobranego xml
- Console.ReadKey();
- }
- public static String cezarCode(String word, int przesuniecie_cezar)//kodowanie cezar
- {
- word = word.ToUpper();
- char[] buffer = word.ToCharArray();
- for (int i = 0; i < buffer.Length; i++)
- {
- char letter = (char)(buffer[i] + przesuniecie_cezar);
- if (letter < 65)
- {
- letter = (char)(letter + 26);
- }
- if (letter > 100)
- {
- letter = (char)(letter - 26);
- }
- buffer[i] = letter;
- }
- Console.WriteLine();
- return new String(buffer);
- }
- public static String cezarDecode(String word_coded, int przesuniecie_cezar)//dekodowanie cezar
- {
- word_coded = word_coded.ToUpper();
- char[] buffer = word_coded.ToCharArray();
- for (int i = 0; i < buffer.Length; i++)
- {
- char letter = (char)(buffer[i] - przesuniecie_cezar);
- if (letter < 65)
- {
- letter = (char)(letter + 26);
- }
- else if (letter > 100)
- {
- letter = (char)(letter - 26);
- }
- buffer[i] = letter;
- }
- return new String(buffer);
- }
- public static Kartoteka<Pracownik> getXML(string sciezkaXML)
- {
- StreamReader streamRd = new StreamReader(sciezkaXML);
- XmlSerializer serializer = new XmlSerializer(typeof(Kartoteka<Pracownik>));
- Kartoteka<Pracownik> kartotekaXML = (Kartoteka<Pracownik>)serializer.Deserialize(streamRd);
- streamRd.Close();
- return kartotekaXML;
- }
- public static void writeXML(string sciezkaXML, Kartoteka<Pracownik> kart1)
- {
- StreamWriter streamWr = new StreamWriter(sciezkaXML);
- XmlSerializer serializer = new XmlSerializer(typeof(Kartoteka<Pracownik>));
- serializer.Serialize(streamWr, kart1);
- streamWr.Flush();
- streamWr.Close();
- }
- public static void readTXT(string sciezka)
- {
- Console.WriteLine("Czy odczytac plik TXT? T/N");
- String temp_answer = Console.ReadLine();
- if (temp_answer == "T" || temp_answer == "t")
- {
- FileInfo plik = new FileInfo(sciezka);
- StreamReader reader = null;
- try
- {
- reader = plik.OpenText();
- String zawartosc_pliku = reader.ReadToEnd();
- Console.WriteLine("-------------zawartosc pliku-------------");
- Console.WriteLine(zawartosc_pliku);
- }
- catch (IOException ioe)
- {
- Console.WriteLine("błąd w odczycie" + ioe.StackTrace);
- }
- finally
- {
- if (reader != null)
- {
- reader.Close();
- }
- }
- }
- }
- public static void show(int i, Kartoteka<Pracownik> kart1)
- {
- Console.WriteLine("Czy chcesz wyswietlic kartoteke? T/N");
- String temp_answer = Console.ReadLine();
- if (temp_answer == "T" || temp_answer == "t")
- {
- for (int j = 0; j < i; j++)
- {
- Console.WriteLine("imie: " + kart1.getPracownik(j).imie + " " + "nawzisko: " + kart1.getPracownik(j).nazwisko);
- }
- }
- }
- public static void showDecoded(int i, Kartoteka<Pracownik> kart1,int przesuniecie_cezar)
- {
- Console.WriteLine("Czy chcesz wyswietlic kartoteke? T/N");
- String temp_answer = Console.ReadLine();
- if (temp_answer == "T" || temp_answer == "t")
- {
- for (int j = 0; j < i; j++)
- {
- Console.WriteLine("imie: " + cezarDecode(kart1.getPracownik(j).imie,przesuniecie_cezar) + " " + "nawzisko: " + cezarDecode(kart1.getPracownik(j).nazwisko,przesuniecie_cezar));
- }
- }
- }
- private static void saveTXT(string sciezka, String text, int i, Kartoteka<Pracownik> kart1)
- {
- FileInfo plik = new FileInfo(sciezka);
- StreamWriter writer = null;
- for (int j = 0; j < i; j++)
- {
- try
- {
- writer = plik.AppendText();
- writer.WriteLine(kart1.getPracownik(j).imie + " " + kart1.getPracownik(j).nazwisko);
- }
- catch (IOException ioe)
- {
- Console.WriteLine("błąd w zapisie" + ioe.StackTrace);
- }
- finally
- {
- if (writer != null)
- writer.Close();
- }
- }
- }
- }
- public class Pracownik
- {
- public String imie { get; set; }
- public String nazwisko { get; set; }
- public int wynagrodzenie { get; set; }
- public int lata_pracy { get; set; }
- public String stanowisko { get; set; }
- }
- public class Kartoteka<T> where T : class
- {
- public List<T> lista = new List<T>();
- public void AddPracownik (T o)
- {
- lista.Add(o);
- }
- public T getPracownik(int index)
- {
- return lista[index];
- }
- }
- abstract class Builder // wzorzec projektowy budowniczy - niedkończone
- {
- protected Pracownik pracownik;
- public void newPracownik()
- {
- pracownik = new Pracownik();
- }
- public Pracownik getPracownik()
- {
- return pracownik;
- }
- public abstract void buildName();
- public abstract void buildSurname();
- public abstract void buildWynagrodzenie();
- public abstract void buildLata_pracy();
- public abstract void buildStanowisko();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement