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