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("没有查询到数据");
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------号码查询段
}
}
}
}
}
}
}