C# 批量导入帐号文件并使其按序排列显示在listbox中

        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            CheckForIllegalCrossThreadCalls = false;
            button3.Enabled = false;
            string count = "";
            button2.Enabled = false;
            OpenFileDialog file = new OpenFileDialog();
            file.Filter = "文本文件|*.txt";         //预设选择文件的类型.为*.txt
            file.RestoreDirectory = true;           //在关闭对话框前使其目录初始化,不写也可以,自己目前是没发觉有什么用
            try
            {
                if (file.ShowDialog() == DialogResult.OK)
                {
                    toolStripStatusLabel1.Text = "正在导入,请稍后...";
                    StreamReader sr = new StreamReader(file.FileName);
                    string strline = sr.ReadLine();
                    while (strline != null)
                    {
                        string[] str = strline.Split('|');
                        Admin admin = new Admin();    //这里其实是自己写的一个类.下面有代码,很简单,就两句话
                        admin.name = str[0];
                        admin.pwd = str[1];
                        lstAdmin.Add(admin);          //这里就是个LIST列表,把每个帐号的信息都加载进列表中
                        listBox1.Items.Add(str[0] + "|" + str[1]);  //把此行读取的内容显示在listBox中
                        strline = sr.ReadLine();      //这里不知道该怎么解释.基础知识不是很好,只知道如果不加这句的话是死循环,只会读取第一行的内容.不往下读
                    }
                    sr.Close();
                    count = lstAdmin.Count.ToString();   //把加载进listBox中的信息总数赋给变量count
                    toolStripStatusLabel1.Text = "当前账户:" + count;
                }
            }
            catch
            {
                toolStripStatusLabel1.Text = "导入文件有误!";
            }
            button2.Enabled = true;
            button3.Enabled = true;
        }


class Admin
    {
        public string name
        { get; set; }
        public string pwd
        { get; set; }
    }


上面就是我写的一个方法.写在backgroundWorker中是因为如果导入文件数据量过大的话不至于导致程序卡死.(好像是废话.说多了..不过我确实只是个新手.按照我的理解来吧)

把知识点基本上都写在备注中了.这只是我在网上自己找的方法进而综合起来的东西.如果有更好的办法请多指教

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值