Ejemplo n.º 1
0
        //Tar emot en lista med recept och frågar användaren vilken fil den vill spara till. Om top rad matas in blir det recipes.txt som används.
        //Om filen finns frågas användaren om den vill skriva över den befintliga filen. Sedan skapas ett RecipeRepository-objekt där metoden "Save" anropas och receptlistan skickas med.
        public static void SaveRecipes(List<Recipe> recipes)
        {
            bool success = false;
            string saveFileName = null;
            while (success == false)
            {
                Console.Write("Ange filnamnet på den fil du vill spara till. Tom rad sparar till 'recipes.txt': ");
                saveFileName = Console.ReadLine();

                if (string.IsNullOrEmpty(saveFileName) || string.IsNullOrWhiteSpace(saveFileName))
                {
                    saveFileName = "recipes.txt";
                }

                if (File.Exists("../../Resources/" + saveFileName))
                {
                    bool success2 = false;
                    while (success2 == false)
                    {
                        Console.Write("Vill du skriva över {0}? J/N: ", saveFileName);
                        string verification = Console.ReadLine();
                        if (verification == "n")
                        {
                            success = false;
                            success2 = true;
                        }
                        else if (verification == "j")
                        {
                            success = true;
                            success2 = true;
                        }
                    }
                }
                else
                {
                    success = true;
                }
            }
            RecipeRepository rr = new RecipeRepository("../../Resources/" + saveFileName);
            if (recipes != null && recipes.Count > 0)
            {
                try
                {
                    rr.Save(recipes);
                    ChangeConsoleColor("Receptet har sparats", ConsoleColor.DarkGreen);
                }
                catch (ApplicationException ae)
                {
                    ChangeConsoleColor(ae.Message, ConsoleColor.Red);
                }
            }
            else
            {
                ChangeConsoleColor("Det finns inga recept att spara", ConsoleColor.Red);
            }
            ContinueOnKeyPressed();
        }
Ejemplo n.º 2
0
        //Frågar användaren efter vilken fil som ska laddas. Om tom rad anges laddas "recipes.txt". Ett nytt RecipeRepository-objekt skapas med filnamnet som parameter.
        //RecipeRepository-objektets "Load"-metod används. Om inte filen finns meddelas användaren om det. Om filen finns laddas den med Load-metoden och sparas i en receptlista som returneras.
        public static List<Recipe> LoadRecipes()
        {
            Console.Write("Ange filnamnet på den fil du vill öppna. Tom rad öppnar 'recipes.txt': ");
            string fileName = Console.ReadLine();

            if (string.IsNullOrEmpty(fileName) || string.IsNullOrWhiteSpace(fileName))
            {
                fileName = "recipes.txt";
            }
            List<Recipe> recipeList = new List<Recipe>();
            try
            {
                RecipeRepository rr = new RecipeRepository("../../Resources/" + fileName);
                recipeList = rr.Load();
                if (recipeList != null)
                {
                    ChangeConsoleColor("Laddningen lyckades", ConsoleColor.DarkGreen);
                }
            }
            catch (ApplicationException ae)
            {
                Console.WriteLine(ae.Message);
            }
            ContinueOnKeyPressed();
            return recipeList;
        }