手机地址及归属地查询。

App.config配置文件

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="getConn" connectionString="data source=凡斌-VAIO;Initial catalog=sales; integrated security=true"/>
  </connectionStrings>
</configuration>



Form1.cs 双击buttion控件


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Configuration;
using System.IO;

namespace 电话归属地查询
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        //********************************************************************
        //将文件夹里的文件内容【内容是:(1300100 北京市 联通 010)】导入到数据库 
        private void button1_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog folder = new FolderBrowserDialog();  //《1》此类提供一种方法,它提示用户浏览、创建并最终选择一个文件夹。如果只允许用户选择文件夹而非文件,则可使用此类

            if (folder.ShowDialog() != DialogResult.OK)  //点击导入按钮,会弹出一个对话框,让用户选择文件夹,如果用户选择文件夹后点击了取消而没按确定按钮,就结束程序
            {
                return;
            }
            string filepath=folder.SelectedPath;  //《2》获取选定文件夹的路径

            Tsql.ExecuteNonQuery("delete from T_phone");

            string[] files = Directory.GetFiles(filepath, "*.txt", SearchOption.AllDirectories);//《3》获取指定目录(文件夹)中文件的名称,该获取方式的参数有("打开的文件名路径","文件名的扩展名","是搜索当前目录,还是搜索当前目录及其所以子目录")

            foreach (string file in files)
            {
                string[] lines = File.ReadAllLines(file,Encoding.Default);
                foreach (string lineN in lines)
                {
                    string[] line = lineN.Split(new char[] { '	' }, StringSplitOptions.RemoveEmptyEntries);
                    string HaoDuan = line[0];
                    string Area = line[1];
                    string Operators = line[2];
                    string AreaCode = line[3];
                    Tsql.ExecuteNonQuery("insert into T_phone values('"+HaoDuan+"','"+Area+"','"+Operators+"','"+AreaCode+"')");
                }
                    
            }
            label1.Text = "数据导入成功";


        }
        //********************************************************************
        //查询你所查询的电话号码的【归属地及运营商】
        private void button2_Click(object sender, EventArgs e)
        {
           string getVal =Tsql.ExecuteReader(txtHaoduan.Text);
           if (getVal != "")  //如果Tsql.ExecuteReader(txtHaoduan.Text)的返回值不是一个""字符串的话就给它的值赋给label1
           {
               label1.Text = getVal;
           }
           else
           {
               label1.Text = "查无数据";//如果Tsql.ExecuteReader(txtHaoduan.Text)的返回值是一个""字符串的话就给label1赋值“查无数据”
           }
                
        }   
    
    }



    class GetConn
    {
        public static string getConn()   //获取连接数据库字符串
        {
            string getConn = ConfigurationManager.ConnectionStrings["getConn"].ConnectionString;
            return getConn;
        }
    }
    class Tsql
    {
        public static void ExecuteNonQuery(string sql)
        {
            GetConn.getConn(); //获取连接链接库字符串
            using (SqlConnection conn = new SqlConnection(GetConn.getConn()))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = sql;
                    cmd.ExecuteNonQuery();
                }
            }
            

        }


        public static string ExecuteReader(string str)  //解释一下这个str: 我在调用年这个ExecuteReader()方法的时候里面的实参就用txtHaoDuan.Text来赋值 那么在执行cmd.CommandText语句的时候就成了select * from T_phone where HaoDuan=txtHaoDuan.Text
        {

            GetConn.getConn();

            using (SqlConnection conn = new SqlConnection(GetConn.getConn()))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandText = "select * from T_phone where HaoDuan=@HD";
                    cmd.Parameters.Add(new SqlParameter("HD", str));  
                    using (SqlDataReader dr = cmd.ExecuteReader())
                    {
                        if (dr.Read())
                        {   //如果执行cmd.CommandText语句查询有结果的话,那么就返回行的 Area列加Operators列
                            string values = dr.GetString(dr.GetOrdinal("Area"))+"|"+ dr.GetString(dr.GetOrdinal("Operators"));
                            return values;
                        }
                        return "";  //如果没有值就返回一个空字符串
                    }

                }

            }
        
        }
    
    }
}


using System.Windows.Forms;

using System.IO;

using System.Data.SqlClient;

 

namespace 手机地址归属地查询

{

    public partial class Form1 : Form

    {

        publicForm1()

        {

            InitializeComponent();

        }

 

        privatevoid button1_Click(objectsender,EventArgs e)

        {

           

        }

 

        privatevoid button2_Click(objectsender,EventArgs e)

        {

            //用户如果没有选择OK,则return;

            if(openFileDialog1.ShowDialog() !=DialogResult.OK)

            {

                return;

            }

            //使用FileStream类从文本中读数据,文件名为“openFileDialog1.FileName”

            using(FileStream file =File.OpenRead (openFileDialog1 .FileName))

            {

                StreamReaderreadre =newStreamReader(file,Encoding .Default );

---------------------------------------------------------------------------------------------------------------------------------------------------------------------打开文件,准备导入段

                stringline = null;

                //如果读取到的流不为空

                while((line = readre.ReadLine()) !=null)

                {

                    //因为文件数据中含有\t制表符,所以用空格来替换。或者在下面写成string[] str = line.Split(new[] { ' '‘\t‘ },StringSplitOptions.RemoveEmptyEntries)这样也可以。

                    line = line.Replace("\t","");

                    //把读取到的值用split方法按照空格来分割

                    string[]str = line.Split(new[] {' ' },StringSplitOptions.RemoveEmptyEntries);

                    stringHaoDuan = str[0];

                    stringArea = str[1];

                    stringOperators = str[2];

                    stringAreaCode = str[3];

------------------------------------------------------------------------------------------------------------------------------------------------------------------------数据处理段

                    //连接数据库

                    using(SqlConnection conn =newSqlConnection("data source=凡斌-VAIO; Initialcatalog=DBPromary;integrated security=true"))

                    {

                        conn.Open();

                        //创建Command命令

                        using (SqlCommand cmd =conn.CreateCommand())

                        {

                            //把分割后的值插入到数据库

                            cmd.CommandText = "insert into phone (HaoDuan,Area,Operators,AreaCode)values (@HaoDuan,@Area,@Operators,@AreaCode)";

                            cmd.Parameters.Add(newSqlParameter("HaoDuan", HaoDuan));

                            cmd.Parameters.Add(newSqlParameter("Area", Area));

                            cmd.Parameters.Add(newSqlParameter("Operators", Operators));

                            cmd.Parameters.Add(newSqlParameter("AreaCode", AreaCode));

                           cmd.ExecuteNonQuery();

                        }

                    }

 

                }

                MessageBox.Show("插入成功");

               

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------数据导入数据库段

 

            }

        }

 

        privatevoid button3_Click(objectsender,EventArgs e)

        {

            using(SqlConnection conn =newSqlConnection("data source=凡斌-VAIO;Initialcatalog=DBPromary;integrated security=true"))

            {

                conn.Open();

                using(SqlCommand cmd = conn.CreateCommand())

                {

                    //textBox1控件中截取用户输入的电话号码中的前7个数。

                    inti =Convert .ToInt32 (textBox1.Text.Substring(0, 7));

                    //查询表,如果查询到的表的HaoDuan(号段)与我截取到的号码前7个数值一致就输出查询到的这条城市名+运营商名

                    cmd.CommandText = "select * from [Phone] where HaoDuan=@HaoDuan ";

                    cmd .Parameters .Add (newSqlParameter ("HaoDuan",i ));

                    using(SqlDataReader dr = cmd.ExecuteReader())

                    {

                        if (dr.Read())

                        {

 

                            //    if (i ==dr.GetInt32(dr.GetOrdinal("HaoDuan")))

                            //    {

                            MessageBox.Show(dr.GetString(dr.GetOrdinal("Area")) +":"+dr.GetString(dr.GetOrdinal("Operators")));

                            //    }

                        }

                        else

                        {

                            MessageBox.Show("没有查询到数据");

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------号码查询段

                        }

                    }

                }

            }

        }

    }

}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值