博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【ADO.NET】5、手机归属地查询( winfrom )
阅读量:6908 次
发布时间:2019-06-27

本文共 3139 字,大约阅读时间需要 10 分钟。

using System.IO;

有一个数据库手机号码的txt文件,格式是 : 13500000000-13560000000-中国移动

查询结果: 湖南移动[邵阳]

文件夹选择对话框 FolderBrowserDialog;

string[] Directory.GetFiles(路径,类型,选项) //按照通配符搜索目录下的文件 

Path.GetFileNameWithoutExtension(文件名) //得到文件名(不要扩展名)
Path.Combine(路径1,路径2) //合并两个路径
Path.GetFileName(路径) //得到文件名(含有后缀)
Path.GetFullPath(路径) //得到文件的全路径

导入前先清除旧数据

界面是这样的:

一个文本输入框:txtMessage
一个查询按钮: btnCha
一个导入按钮: btnInput
一个Label控件: labMessage

private void btnInput_Click(object sender, EventArgs e)        //导入按钮 单击事件{    FolderBrowserDialog dlg = new FolderBrowserDialog();    //选择目录对话框    if (dlg.ShowDialog() != DialogResult.OK)            //判断是否点确定    {        return;    }    string path = dlg.SelectedPath;                //获取目录路径    string Str = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString; //获取字符串    using (SqlConnection conn = new SqlConnection(Str))     //使用变量Str进行连接    {        conn.Open();        using (SqlCommand cmd = conn.CreateCommand())        {            cmd.CommandText = "delete from T_phone";    //先删除表            cmd.ExecuteNonQuery();         }    }     //搜索指定目录下的所有 .txt 文件     string[] files = Directory.GetFiles(path, "*.txt", SearchOption.AllDirectories);          using (SqlConnection conn = new SqlConnection(Str))     {           conn.Open();           using (SqlCommand cmd = conn.CreateCommand())           {                     cmd.CommandText = "insert into T_phone(StarNo,EndNo,Name) values(@SN,@EN,@NA)";            foreach (string file in files)            {             string 运营商 = Path.GetFileNameWithoutExtension(file);      //得到文件名,无扩展名             string[] lines = File.ReadAllLines(file, Encoding.Default);  //读取所有行,默认编码为UTF-8                        foreach (string line in lines)            {                string[] str = line.Split('-');    //按"-"符分割                string StartN = str[0];                string EndN = str[1];                string Name = str[2];                cmd.Parameters.Clear();          //先清空 Parameters                cmd.Parameters.Add(new SqlParameter("SN", StartN));                cmd.Parameters.Add(new SqlParameter("EN", EndN));                cmd.Parameters.Add(new SqlParameter("NA",运营商 + Name));                cmd.ExecuteNonQuery();            }            }            MessageBox.Show("导入完成!");        }        } } private void btnCha_Click(object sender, EventArgs e)    //查询按钮,单击事件 {    string Str = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;    using (SqlConnection conn = new SqlConnection(Str))    {       conn.Open();       using (SqlCommand cmd = conn.CreateCommand())       {        cmd.CommandText = "select Name from T_phone where StarNo<@Num and EndNo>@Num";        cmd.Parameters.Add(new SqlParameter("@Num",txtNum.Text.Trim()));        SqlDataReader dr = cmd.ExecuteReader();        if (dr.Read())        {        string result =Convert.ToString(dr["Name"]);        labMessage.Text = null;        labMessage.Text ="号码地址:" + result;        }        else        {        labMessage.Text = "号码地址:" + "地址未知!";        }      }   } }

 

posted on
2017-05-11 21:08 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/yezuhui/p/6842793.html

你可能感兴趣的文章
linux下统计当前目录下文件个数
查看>>
Struts2知多少(1) Struts2 MVC架构
查看>>
android 自定义组件-带图片的textView
查看>>
201508整理:前端工程师的(现在主要的问题、工作选择、技术前景未来)
查看>>
iOS开发-NSDictionary
查看>>
HTTPS 概述
查看>>
解决eclipse+MAVEN提示One or more constraints have not been satisfied.的问题
查看>>
nginx主配置文件 在那找怎么打开
查看>>
Android:Intent
查看>>
C++标准转换运算符const_cast
查看>>
【Cocos2d-x】Mac 在 Cocos2d-x 3.X 打包Android
查看>>
测试计划与测试方案的区别
查看>>
Hadoop 读取文件API报错
查看>>
JS实现密码加密
查看>>
HTML+CSS-如何定义让两个div横向排列
查看>>
Matlab画柱状和折线对照图
查看>>
javascript时间戳和日期字符串相互转换
查看>>
链接详解--静态库
查看>>
从0开始学java——JUnit4 复习,其实基本思想还是那些,不过采用了新的注释格式的语法...
查看>>
lintcode:Length of Last Word 最后一个单词的长度
查看>>