C# 手机号码归属地查询

手机号码归属地的数据信息是存于某文件夹下的txt文档,

打开一txt文档里面的数据格式如下:

13003000000-13003009999-合肥
13003010000-13003029999-蚌埠
13003030000-13003049999-芜湖
13003050000-13003069999-合肥
13003070000-13003079999-淮南
13003080000-13003089999-合肥

。。。。。。。。。

一、创建数据库和表,表字段id,startNo,endNo,area(area由txt文件名和城市组成)

扫描该文件夹下的txt文档导入至创建的数据库表中。

代码如下:当然winfoorm 上需要一个导入按键以及一个FolderBrowserDialog控件。用来选中该文件夹。

if (fbd.ShowDialog() != DialogResult.OK) 
            {
                return;
            }
            string path=fbd.SelectedPath;
            string[] files=Directory.GetFiles(path,"*.txt",SearchOption.AllDirectories);
        
             using(SqlConnection conn=new SqlConnection(dbconn))
             {
                 conn.Open();
                 using (SqlCommand cmd = conn.CreateCommand()) 
                 {
                     cmd.CommandText = "insert into T_cellNo(startNo,endNO,area) values(@sNO,@eNO,@area)";
                     string lines=null;
                   foreach(string file in files)
                     {
                         string fname=Path.GetFileName(file);
                         string filename = Path.GetFileNameWithoutExtension(file);
                         using (FileStream filestream = File.OpenRead(file)) 
                         {
                             StreamReader reader=new StreamReader(file,System.Text.Encoding.GetEncoding("GB2312"));
                             while((lines=reader.ReadLine())!=null)
                             {
                                 string[] strs = lines.Split('-');
                                 string startNO = strs[0].ToString();
                                 string endNo = strs[1].ToString();
                                 string areas = strs[2].ToString();
                                 string area = filename + areas;
                                 cmd.Parameters.Clear();
                                 cmd.Parameters.Add(new SqlParameter("sNO", startNO));
                                 cmd.Parameters.Add(new SqlParameter("eNO", endNo));
                                 cmd.Parameters.Add(new SqlParameter("area", area));
                                 cmd.ExecuteNonQuery();

                             }
                         }
                     }
                     MessageBox.Show("数据库导入成功");


二、输入手机号点击按钮查询归属地代码

using (SqlConnection conn = new SqlConnection(dbconn))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = "select * from T_cellNO where startNO<=@NO and endNO>=@NO";
                    cmd.Parameters.Add(new SqlParameter("NO", textBox1.Text));
                    using (SqlDataReader reader = cmd.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            string area = reader.GetString(reader.GetOrdinal("area"));
                            MessageBox.Show("手机号码归属地"+area);
                        }
                        else 
                        {
                            MessageBox.Show("对不起,查无此号");
                        }
                        
                    }
                }
            }


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值