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; } } } } } } }