C#一周学习

建立一个简单的花店管理系统不使用窗口

using System;
using System.IO;
using System.Linq;
using System.Reflection;
using tryagain;
using static System.Net.Mime.MediaTypeNames;

namespace AccountManagementSystem
{
    class Program
    {
        static void Main(string[] args)
        {

            kaishi();

        }

        static void kaishi()
        {
            bool isRunning = true;
            while (isRunning)
            {
                Console.WriteLine("花店管理系统");
                Console.WriteLine("请输入相应的数字进行操作:");
                Console.WriteLine("1. 注册新账号");
                Console.WriteLine("2. 登录账号");
                Console.WriteLine("3. 注销账号");
                Console.WriteLine("4. 退出系统");

                string choice = Console.ReadLine();

                switch (choice)
                {
                    case "1":
                        RegisterAccount();
                        break;
                    case "2":
                        Login();
                        break;
                    case "3":
                        zuxiaoaccount();
                        break;
                    case "4":
                        isRunning = false;
                        break;
                    default:
                        Console.WriteLine("无效的选择,请重新输入!");
                        break;
                }
            }
        }

        static void RegisterAccount()
        {
            FileStream f = new FileStream("accounts.txt", FileMode.OpenOrCreate);
            f.Close();
            using (StreamWriter s = File.AppendText("accounts.txt"))
            {
                Console.WriteLine("请输入账号:");
                string account = Console.ReadLine();
                Console.WriteLine("请输入密码:");
                string password = Console.ReadLine();
                s.WriteLine(account + password);
                Console.WriteLine("账号注册成功!");
                s.Close();
            }

               
          
            kaishi();
        }

        static void zuxiaoaccount()
        {
            
            string a = "x";
            Console.WriteLine("输入想要注销的账号");
            string account = Console.ReadLine();
            Console.WriteLine("请输入该账号密码:");
            string password = Console.ReadLine();
            string key = account + password;
            int i = 0;
            while (a != "")
            {
                FileStream f = new FileStream("accounts.txt", FileMode.OpenOrCreate);
                StreamReader sw = new StreamReader(f);
                
                a = sw.ReadLine();
                f.Close();
                i++;

                if(key == a)
                {
                    
                    i--;
                    try
                    {
                        var lines = File.ReadAllLines("accounts.txt").ToList();
                        lines.RemoveAt(i);
                        File.WriteAllLines("accounts.txt", lines);
                        Console.WriteLine("注销成功");
                        kaishi();

                    }
                    catch
                    {
                        Console.WriteLine("没有该账号");
                        kaishi();
                    }
                    sw.Close();
                    f.Close();
                    break;
                }
                
            }
        }

        static void Login()
        {
         
            FileStream a = new FileStream("accounts.txt", FileMode.OpenOrCreate);
            
            Console.WriteLine("请输入账号:");
            string account = Console.ReadLine();

            Console.WriteLine("请输入密码:");
            string password = Console.ReadLine();
            bool cunzai = false;
            StreamReader sr = new StreamReader(a);

            string inflie = sr.ReadToEnd();
            sr.Close();
            try
            {
                inflie.Trim().Contains(account + password);
            }
            catch(NullReferenceException)
            {
                Console.WriteLine("无该账号");
            }
            if (inflie.Trim().Contains(account + password))
            {
                cunzai = true;
            }
            if (cunzai)
            {
                Console.WriteLine("登陆成功");
                main();
            }
            else
            {
                Console.WriteLine("账号或密码错误");
            }
        }

        static void main()
        {
            Console.WriteLine("1.查询鲜花数据2.储存鲜花数据3.删除鲜花数据4.退出系统");
            string num = Console.ReadLine();
            bool running = true;
            indexaaa huahua = new indexaaa();
            while (running)
            {
                
                
                switch (num)
                {
                    case "1": 
                        {
                            chaxun();
                        }break;
                    case "2": 
                        {
                            chucun();
                        }break;
                    case "3": 
                        {
                            sanchu();
                        }break;
                    case "4":
                        {
                            tuichu();
                            
                        }break;
                    default :
                        {
                            Console.WriteLine("无效的选择请重新输入。");
                            num = Console.ReadLine();
                        }
                        break;
                }
            }     
        }
        static void tuichu()
        {
            System.Environment.Exit(0);
        }

        static void chucun()
        {
            indexaaa hua1 = new indexaaa();
            string a = "hua.txt";
            FileStream hua = new FileStream(a, FileMode.OpenOrCreate);
            hua.Close();
            StreamWriter sw = File.AppendText("hua.txt");
            Console.WriteLine("请按顺序输入鲜花编号:");
            int hao = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入鲜花名称:");
            string huaname = Console.ReadLine();
            Console.WriteLine("请输入鲜花价格:");
            string huaprice = Console.ReadLine();
            sw.WriteLine(hao + " " + huaname + " " + huaprice);
            hua1[hao] = hao + " " + huaname + " " + huaprice;
            Console.WriteLine("储存成功");
            sw.Close();
           
            main();
        }

        static void chaxun()
        {
            string a = "hua.txt";
            FileStream huahua = new FileStream(a, FileMode.OpenOrCreate);
            indexaaa hua2 = new indexaaa();

            StreamReader sr = new StreamReader(huahua);
            bool kk = true;
            int i = 0;
            while (kk)
            {
                
                hua2[i] = sr.ReadLine();
                //Console.WriteLine(hua2[i]);
               

                if (hua2[i] == null)
                {
                    kk = false;
                }
                i++;
            }
            sr.Close();
            huahua.Close();
            Console.WriteLine("输入要查询的花的编号:");
            int num = Convert.ToInt32(Console.ReadLine());
            try
            {   
                Console.WriteLine("编号 名称 价格");
                Console.WriteLine(hua2[num]);
            }
            catch { Console.WriteLine("没有该鲜花数据"); }
            main();


        }

        static void sanchu()
        {
            string a = "hua.txt";
            FileStream huahuahua = new FileStream(a, FileMode.OpenOrCreate);
            
            Console.WriteLine("输入想要删除鲜花的编号:");
            int num = Convert.ToInt32(Console.ReadLine());
            huahuahua.Close();
            var lines = File.ReadAllLines(a).ToList();
            try 
            { lines.RemoveAt(num); }
            catch
            {
                Console.WriteLine("没有该编号花朵");
                sanchu();
            }
            
            File.WriteAllLines(a, lines);
            
            Console.WriteLine("删除成功");
            main();

        }

       

        
    }
}

           

      
    
                
                
                
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace tryagain
{
    internal class indexaaa
    {
        string[] huas = new string[100];
        
        public string this[int index]
        {
            get
            {
                return huas[index];
            }
            set
            {
                huas[index] = value;
            }
        }
    }
}

以上值得注意的是当一个鲜花的数据被删除,其后鲜花的编码会向前挪动一位。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值