C# winform右击导入手机号码
private void 导入手机号ToolStripMenuItem_Click(object sender, EventArgs e)
{
using (OpenFileDialog Openfile = new OpenFileDialog())
{
Openfile.Filter = "文本文件|*.txt";
Openfile.Multiselect = false;
if (Openfile.ShowDialog() == DialogResult.OK)
{
Thread threadfile = new Thread(() => ReadFile(Openfile.FileName));
threadfile.IsBackground = true;
threadfile.Start();
}
}
} private void ReadFile(string filename)
{
txtlog.Invoke(new Action(() =>
{
txtlog.AppendText("开始读取手机号码".SetLog());
}));
var file = File.Open(filename, FileMode.Open);
int num = ;
int goods = ;
int repeat = ;
using (var stream = new StreamReader(file))
{
while (!stream.EndOfStream)
{
lock (lock_send)
{
if (sendlist.Count > )
{
break;
}
}
num++;
string linetemp = stream.ReadLine().Trim();
if (IsTel(linetemp))
{
lock (lock_send)
{
var data = sendlist.Where(m => m.Tel == linetemp).FirstOrDefault();
if (data != null)
{
repeat++;
continue;
}
}
goods++;
SendTel _send = new SendTel();
_send.Tel = linetemp;
_send.sms_status = status.待发送;
_send.send_time = null;
ListViewItem item = new ListViewItem(_send.Tel);
item.SubItems.Add(_send.sms_status.ToString());
item.SubItems.Add(_send.send_time);
item.SubItems.Add("");
listSend.Invoke(new Action(() =>
{
ListViewItem backitem = listSend.Items.Add(item);
dic.Add(_send.Tel, backitem);
}));
lock (lock_send)
{
sendlist.Add(_send);
}
}
}
}
txtlog.Invoke(new Action(() =>
{
string log = string.Format("添加完成!有效数据为:{0},过滤重复数据:{1},总数据:{2}", goods.ToString(), repeat.ToString(), num.ToString());
txtlog.AppendText(log.SetLog());
})); }
/// <summary>
/// 验证手机号是否合法
/// </summary>
/// <param name="tel"></param>
/// <returns></returns>
public static bool IsTel(string tel)
{
try
{
if (string.IsNullOrEmpty(tel) || tel.Length != )
{
return false;
}
return System.Text.RegularExpressions.Regex.IsMatch(tel, @"^[1]+[3,4,5,6,7,8]+\d{9}");
}
catch (Exception ex)
{
return false;
}
}
很久以前写的代码了,读取txt文件,一行一个手机号码,
好像要求txt文本文件必须是utf8格式,否则读取出来会乱码。
C# winform右击导入手机号码的更多相关文章
- C# winform 导出导入Excel/Doc 完整实例教程[网上看到的]
还真没做过winform的导出导入,今天上网百度了一下.结果--- 所以还是我自己写个吧.之前做过web的,半搬半做就OK. 1添加引用:Aspose.Cells.dll(我们就叫工具包吧,可以从网上 ...
- C# WinForm 导出导入Excel/Doc 完整实例教程[使用Aspose.Cells.dll]
[csharp] view plain copy 1.添加引用: Aspose.Cells.dll(我们就叫工具包吧,可以从网上下载.关于它的操作我在“Aspose.Cells操作说明 中文版 下载 ...
- winform 批量导入本地sql文件,批量导入mdb(access)文件到sqlserver
0.数据库连接 private void button1_Click(object sender, EventArgs e) { this.btnUpdate.Enabled = false; #re ...
- winform项目导入数据
一.点击导入按钮,弹出文件选择框 这个方法的使用要引用下面两个命名空间: using System.Windows.Forms;using DevExpress.XtraEditors; privat ...
- winform excel导入--自带office.interop.excel方式
用npoi方式,遇到一个问题,有的excel用加密软件(盖章,只读等)生成的解析不了,所以换成自带的方式,可以解决. 需要引用系统自带Microsoft.office.interop.excel pu ...
- winform excel导入--NPOI方式
项目中要用到excel导入数据,用NPOI方式做了一个demo,记录如下: Form1代码: public Form1() { InitializeComponent(); } private voi ...
- WinForm Excel导入
主要代码如下: 定义一个DataSet 存放Excel读取的数据 /// <summary> /// Excel 表中读取的数据 /// </summary> publi ...
- Winform中导入exicel文件
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application(); ...
- MySQL excel导入
说明: 1 因在测试发现如果用SQLyog导入数据需要下载excel驱动,因而选择Navicat 2 之前选择excel文件为xlsx 发现Navicat识别不了,因而转存为xls文件,测试OK 1 ...
随机推荐
- Spark orderBy(desc("col"))部分数据排序失败
起因 对数据进行三个维度的排序,用的是orderBy(desc("col")),结果其中两个维度上结果返回正确,另外一个维度上结果出现了大的排在后面的结果,错误的结果大概如下: w ...
- script 页面在指定位置加载
<head> <script> function load(){window.location="#workspaces"} </script> ...
- 09Vue.js快速入门-Vue入门之Vuex实战
9.1. 引言 Vue组件化做的确实非常彻底,它独有的vue单文件组件也是做的非常有特色.组件化的同时带来的是:组件之间的数据共享和通信的难题. 尤其Vue组件设计的就是,父组件通过子组件的prop进 ...
- C#学习笔记(32)——委托改变窗体颜色
说明(2017-11-23 22:17:34): 1. 蒋坤的作业,点击窗体1里面的按钮,出现窗体2:点击窗体2里的按钮,窗体1改变背景色. 2. 做完窗体传值后,这个作业就很简单了. 代码: For ...
- 园子里的一个Dal类
public class DALHelper { public static List<T> Search<T>() where T : SH_SetBase { using ...
- Html模板渲染引擎Hogan
Github:https://github.com/twitter/hogan.js 最简单的使用教程:http://www.imooc.com/article/18493
- java小技巧-生成重复的字符
今天碰到个需求,根据字段个数,动态生成sql的占位符,如下: public static void main(String[] args) { System.out.println(String.jo ...
- 【jquery】fancybox 是一款优秀的 jquery 弹出层展示插件
今天给大家分享一款优秀的 jquery 弹出层展示插件 fancybox.它除了能够展示图片之外,还可以展示 flash.iframe 内容.html 文本以及 ajax 调用,我们可以通过 css ...
- webRTC源码下载 Windows Mac(iOS) Linux(Android)全
webRTC源码下载地址:https://pan.baidu.com/s/18CjClvAuz3B9oF33ngbJIw 提取码:wl1e Windows版:visual studio 2017工 ...
- Android studio 配置file encoding 无效,中文乱码解决办法
通过配置Android studio 配置file encoding 无效,中文乱码,问题出现在java编译的时候jack采用了默认编码(中文windows默认的GBK编码)而乱码,所以不管更改bui ...