第五节 8_手机归属地查询案例 简单

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.IO;
using System.Data.SqlClient;

namespace _8_手机归属地查询案例
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //folderBrowserDialog1
            //判断是否点击了确定按钮,如果没有点击就返回
            if (folderBrowserDialog1.ShowDialog() != DialogResult.OK) {
                return;
            }
            //取得路径
            string path = folderBrowserDialog1.SelectedPath;
            //读取该目录下面的所有.txt文件,返回的是字符串数组
            string[] files = Directory.GetFiles(path, "*.txt", SearchOption.AllDirectories);

            using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net传智播客\第五季ADO.NET\8登陆练习操作\8_手机归属地查询案例\Database1.mdf;Integrated Security=True;User Instance=True"))
            {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand()) 
                {
                    cmd.CommandText = "INSERT INTO T_tel(startNo,endNo,area) values(@sNo,@eNo,@area)";
                    string line = 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 ((line = reader.ReadLine()) != null) 
                            {
                                string[] strs = line.Split('-');
                                string startNo = strs[0].ToString();
                                string endNo = strs[1].ToString();
                                string area = strs[2].ToString();
                                area = filename + area;
                                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("导入成功!");
        }

        private void button2_Click(object sender, EventArgs e)
        {
            string tel = tb_tel.Text;
            if (tel == "")
            {
                MessageBox.Show("请输入手机号");
            }
            else {
                using (SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=E:\MyProjects\C#net传智播客\第五季ADO.NET\8登陆练习操作\8_手机归属地查询案例\Database1.mdf;Integrated Security=True;User Instance=True"))
                {
                    conn.Open();
                    using (SqlCommand cmd = conn.CreateCommand()) 
                    {
                        cmd.CommandText = "select * FROM T_tel WHERE startNo<=@startNo AND endNo>=@endNo ";
                        cmd.Parameters.Add(new SqlParameter("startNo", tel));
                        cmd.Parameters.Add(new SqlParameter("endNo", tel));
                        using (SqlDataReader reder = cmd.ExecuteReader()) 
                        {
                            while (reder.Read()) 
                            {
                                string area = reder.GetString(reder.GetOrdinal("area"));
                                MessageBox.Show("你的手机号属于:"+area);
                                return;
                            }
                            MessageBox.Show("暂无该手机归属地信息!");
                            return;
                        }
                    }
                }
            }

        }
    }
}

  

原文地址:https://www.cnblogs.com/xiangxiaodong/p/2379315.html