C# 手机号码归属地查询

C# 手机号码归属地查询手机号码归属地的数据信息是存于某文件夹下的txt文档,打开一txt文档里面的数据格式如下:13003000000-13003009999-合肥13003010000-13003029999-蚌埠13003030000-13003049999-芜湖13003050000-13003069999-合肥13003070000-13003079999-淮南13003080000

大家好,又见面了,我是你们的朋友全栈君。

手机号码归属地的数据信息是存于某文件夹下的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("对不起,查无此号");
                        }
                        
                    }
                }
            }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163177.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月22日 上午11:00
下一篇 2022年7月22日 上午11:00


相关推荐

  • JSP简介及其与HTML的区别

    JSP简介及其与HTML的区别01 什么是 JSP JSP 全称 JavaServerPa 是一种动态网页开发技术 它使用 JSP 标签在 HTML 网页中插入 Java 代码 标签通常以 lt 开头以 gt 结束 JSP 是一种 Javaservlet 主要用于实现 Javaweb 应用程序的用户界面部分 网页开发者们通过结合 HTML 代码 XHTML 代码 XML 元素以及嵌入 JSP 操作和命令来编写 JSP JSP 通过网

    2026年3月19日
    2
  • Python 学习笔记 变量 xxx XXX「建议收藏」

    Python 学习笔记 变量 xxx XXX「建议收藏」Python学习笔记变量xxxXXXname=”adalovelace”print(name.title())print(name.upper())print(name.lower())first_name=”ada”last_name=”lovelace”full_name=first_name+””+last_nameprint(full_name)print(“Hello,”+…

    2022年8月22日
    13
  • Oracle数据库面试题总结

    Oracle数据库面试题总结1 SQL 语句分类 DQL 数据查询语言 selectDML 数据操作语言 insert delete updateDDL 数据定义语言 create drop alterDCL 数据控制语言 grant 把权限授予用户 revoke 把权限从用户收回 TPL TCL 事务控制语言 commit rollback2 Oracle 是怎样分页的 Oracle 用 row

    2026年3月27日
    4
  • Redis之skiplist

    Redis之skiplistRedis 为什么用跳表而不用平衡树 本文是 Redis 内部数据结构详解 系列的第六篇 在本文中 我们围绕一个 Redis 的内部数据结构 skiplist 展开讨论 Redis 里面使用 skiplist 是为了实现 sortedset 这种对外的数据结构 sortedset 提供的操作非常丰富 可以满足非常多的应用场景 这也意味着 sortedset 相对来说实现比较复杂 同时 skiplist 这种数据结构

    2026年3月26日
    2
  • 北航计算机考研有多难_北京航空航天大学录取分数线2021

    北航计算机考研有多难_北京航空航天大学录取分数线2021文/最爱生活截止到现在,高考的志愿填报工作已经陆陆续续结束,各个高校也开始进行了录取工作。最近也有一部分省份开始公布了一些提前批次招录的投档分数线,同学们也将会陆陆续续的接受到自己理想中大学的录取通知书。目前,又有两个省份开始公布了本省份的提前批次投档分数线,分别是贵州省以及新疆维吾尔自治区。在这两个省份公布出提前批次的录取分数线之后,在网上也是一石激起千层浪,不少“惊喜”的事情也在发生,不少网友…

    2025年11月3日
    5
  • 电容分类和作用_电容的识别

    电容分类和作用_电容的识别硬件基础知识—电容分类智能硬件和物联网产品上,工作电压不高,其常用的电容根据不同的工艺,主要分为陶瓷电容、电解电容和钽电容。↑陶瓷电容的结构图↑电解电容的结构图不管是什么电容,都是两组金属片夹着一层介质。陶瓷电容把金属片交错摆放,电解电容把金属片卷成柱状。↑片状陶瓷电容↑贴片陶瓷电容陶瓷电容,MultilayerCeramicCapacitor(MLCC),陶瓷电容的电介质是陶瓷,所以叫做陶瓷电容。陶瓷电容容值小、电压高、尺寸小、高频性能好、不区分正.

    2022年8月22日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号