黑马程序员之ADO.NET学习笔记:IP地址归属地查询。查询结果:北京移动[海淀]。
2012-09-06 08:46
756 查看
---------------------------------------------------
2345王牌技术员联盟、2345王牌技术员联盟、期待与您交流!---------------------------------------------------------
//IP地址归属地查询。查询结果:北京移动[海淀]。
//先把数据文件解压到硬盘上,然后写程序进行数据导入:扫描解压的目录下所有的txt文件,然后依次读取每个文件,注意用上文件名,表三列:起始号码,结束号码,运营商名称(山东移动[河泽])
//查询:select * from *** where StartNo <= @No and EndNo >=@No
using System;
using System.Collection.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 数据导入导出
{
public Form1()
{
InitializaComponent();
}
private void button1_Click(object sender,EventArgs e)
{
if(odfImport.ShowDialog() != DialogResult.OK)
{
return;
}
if( odfImport.ShowDialog() == DialogResult.OK)
{
using(FileStream fileStream = File.OpenRead(odfImport.FileName))
{
using(StreamReaser streamReader = new StreamReader(fileStream))
{
string line = null;
while((line = streamReader.ReadLine())! = null)
{
string[] strs = line.Split('|');
string name = strs[0];
int age = Convert.ToInt32(strs[1]);
using(SqlConnection conn = new SqlConnection(@"Data Source = .\SQLEXPRESS;AttachDBFilename=|DataDirectory|\MyDB.mdf;Integrated Security = True;User Instance = True"))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "Insert into T_Numbers(StartNo,EndNo,Name) values(@StartNo,@EndNo,@Name)";
foreach(string file in files)
{
string 运营商名称 = Path.GetFileNameWithoutExtension(file);
string[] lines = File.ReadAllLines(file.Encoding.Defaule);//不用StreamReader,因为文件很小,一次性加载也不占多少内存。经反编译得知,ReadAllLines默认编码是UTF-8
foreach(string line in lines)
{
string[] strs = line.Split('-');
string 开始号码 = strs[0];
string 结束号码 = strs[1];
string 市 = strs[2];
cmd.Parameter.Clear();
cmd.Parameters.Add(new SqlParameter("StartNo",开始号码));
cmd.Parameters.Add(new SqlParameter("EndNo",结束号码));
cmd.Parameters.Add(new SqlParameter("Name",运营商名称+市));
cmd.ExecuteNonQuery();
}
}
}
}
}
}
}
MessageBox.Show("导入成功!");
private void btnSearch_Click(object sender,EvnetArgs e)
{
//读取连接字符串
String connStr = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;
using(SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using(SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from T_Numbers where StartNo<=@No and EndNo>=@No";
cmd .Parameters.Add(new SqlParameter("No",txtPhone.Text));
using(SqlDaraReader reader = cmd.ExecuteReader())
{
if(reaser.Read())
{
string name = reader.GetString(reader.GetOrdinal("Name"));
MessageBox.Show("name");
}
}
}
}
}
}
}
---------------------------------------------------
2345王牌技术员联盟、2345王牌技术员联盟、期待与您交流!---------------------------------------------------------
2345王牌技术员联盟、2345王牌技术员联盟、期待与您交流!---------------------------------------------------------
//IP地址归属地查询。查询结果:北京移动[海淀]。
//先把数据文件解压到硬盘上,然后写程序进行数据导入:扫描解压的目录下所有的txt文件,然后依次读取每个文件,注意用上文件名,表三列:起始号码,结束号码,运营商名称(山东移动[河泽])
//查询:select * from *** where StartNo <= @No and EndNo >=@No
using System;
using System.Collection.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 数据导入导出
{
public Form1()
{
InitializaComponent();
}
private void button1_Click(object sender,EventArgs e)
{
if(odfImport.ShowDialog() != DialogResult.OK)
{
return;
}
if( odfImport.ShowDialog() == DialogResult.OK)
{
using(FileStream fileStream = File.OpenRead(odfImport.FileName))
{
using(StreamReaser streamReader = new StreamReader(fileStream))
{
string line = null;
while((line = streamReader.ReadLine())! = null)
{
string[] strs = line.Split('|');
string name = strs[0];
int age = Convert.ToInt32(strs[1]);
using(SqlConnection conn = new SqlConnection(@"Data Source = .\SQLEXPRESS;AttachDBFilename=|DataDirectory|\MyDB.mdf;Integrated Security = True;User Instance = True"))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "Insert into T_Numbers(StartNo,EndNo,Name) values(@StartNo,@EndNo,@Name)";
foreach(string file in files)
{
string 运营商名称 = Path.GetFileNameWithoutExtension(file);
string[] lines = File.ReadAllLines(file.Encoding.Defaule);//不用StreamReader,因为文件很小,一次性加载也不占多少内存。经反编译得知,ReadAllLines默认编码是UTF-8
foreach(string line in lines)
{
string[] strs = line.Split('-');
string 开始号码 = strs[0];
string 结束号码 = strs[1];
string 市 = strs[2];
cmd.Parameter.Clear();
cmd.Parameters.Add(new SqlParameter("StartNo",开始号码));
cmd.Parameters.Add(new SqlParameter("EndNo",结束号码));
cmd.Parameters.Add(new SqlParameter("Name",运营商名称+市));
cmd.ExecuteNonQuery();
}
}
}
}
}
}
}
MessageBox.Show("导入成功!");
private void btnSearch_Click(object sender,EvnetArgs e)
{
//读取连接字符串
String connStr = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;
using(SqlConnection conn = new SqlConnection(connStr))
{
conn.Open();
using(SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from T_Numbers where StartNo<=@No and EndNo>=@No";
cmd .Parameters.Add(new SqlParameter("No",txtPhone.Text));
using(SqlDaraReader reader = cmd.ExecuteReader())
{
if(reaser.Read())
{
string name = reader.GetString(reader.GetOrdinal("Name"));
MessageBox.Show("name");
}
}
}
}
}
}
}
---------------------------------------------------
2345王牌技术员联盟、2345王牌技术员联盟、期待与您交流!---------------------------------------------------------
相关文章推荐
- 黑马程序员之 ASP.NET学习笔记:ADO.NET基础知识总结
- 【黑马程序员】ADO.NET访问EXCEL(学习笔记)
- 黑马程序员-- ADO.NET基础学习笔记
- 黑马程序员之ADO.NET学习笔记:执行Insert操作
- 黑马程序员——ADO.Net学习笔记
- 黑马程序员之ADO.NET学习笔记:SqlDataReader和SqlDataAdapter 区别
- 黑马程序员之ADO.NET学习笔记:登陆练习。
- 黑马程序员之C#学习笔记:ADO.NET入门级材料
- 黑马程序员之ADO.NET学习笔记:不用第三个变量,实现两数交换
- 黑马程序员之ADO.NET 学习笔记:多种ADO.NET属性
- 黑马程序员之ADO.NET学习笔记:ADO.NET数据导入导出
- 黑马程序员之ADO.NET学习笔记:SqlCommand(命令对象)
- 黑马程序员之ADO.NET学习笔记:省市选择程序,数据全部来自于数据库。
- 黑马程序员之ADO.NET学习笔记:ADO.NET学习总结
- 黑马程序员之ADO.NET学习笔记:执行select语句
- 黑马程序员之ADO.NET学习笔记:SqlParameter(Sql参数)
- 黑马程序员之ADO.NET学习笔记:using和close
- 黑马程序员_学习日记49_618数据库开发及ADO.Net(多条件搜索、case…when…语句、索引Index、子查询、分页、Join语句)
- 黑马程序员之ADO.NET学习笔记:.NET中被大家容易忽视的问题
- 黑马程序员 C#学习笔记② ADO.NET技术步骤