用c#做一个网页,这个网页的主要功能是选择一个txt文件,将里面的数据载入到sql数据库里并验证重复性。

?勋.? 2024-05-27 00:41:11
最佳回答
我才做了这样一个功能,给你代码:(原理:正则表达式) /// <summary> /// 将列表读取到datatable中 /// </summary> /// <returns></returns> private datatable readtext2datatable(string filename,int length) { datatable dt = new datatable(); datetime times = datetime.now; string date = times.tostring("yyyymmdd"); string time = times.tostring("hh:mm:ss"); if (filename != "") { l**t<string> filecontent = getl**t(filename, length); //datatable-设置列 dt.columns.add("ab000");//公司代码-master_t_cocode dt.columns.add("ab001");//储位区代码 dt.columns.add("ab002");//材料号 dt.columns.add("ab003");//日期-date dt.columns.add("ab004");//时间-time dt.columns.add("ab005");//出入别-1 dt.columns.add("ab006");//订单单别 dt.columns.add("ab007");//订单单号 dt.columns.add("ab008");//订单序号 dt.columns.add("ab009");//交货总数量 dt.columns.add("ab010");//批号-"" dt.columns.add("ab011");//周期 dt.columns.add("ab012");//状态-y dt.columns.add("ab013");//交货件数 dt.columns.add("ab014");//每箱数量 dt.columns.add("ab021");//xuser-master_t_empno dt.columns.add("ab022");//xdate-date dt.columns.add("ab023");//xtime-time //datatable-赋值 if(length==5) for (int i = 0; i <= filecontent.count / length - 1; i++) { datarow dr = dt.rows.add(); string[] sarr_code = filecontent[length * i].split('-'); string[] sarr_num = filecontent[length * i + 2].split('-'); dr["ab000"] = master_t_cocode; //公司代码 dr["ab001"] = filecontent[length * i + 4];//储位区代码 dr["ab002"] = filecontent[length * i + 1];//材料号 dr["ab003"] = date; //日期 dr["ab004"] = time; //时间 dr["ab005"] = "1"; //出入别 dr["ab006"] = sarr_code[0]; //订单单别 dr["ab007"] = sarr_code[1]; //订单单号 dr["ab008"] = sarr_code[2]; //订单序号 dr["ab009"] = sarr_num[0]; //交货总数量 dr["ab010"] = ""; //批号 dr["ab011"] = filecontent[length * i + 3];//周期 dr["ab012"] = "y"; //状态 dr["ab013"] = sarr_num[1]; //交货件数 dr["ab014"] = sarr_num[2]; //每箱数量 dr["ab021"] = master_t_empno; //xuser dr["ab022"] = date; //xdate dr["ab023"] = time; //xtime } if (length == 7) for (int i = 0; i <= filecontent.count / length - 1; i++) { datarow dr = dt.rows.add(); string[] sarr_code = filecontent[length * i].split('-'); dr["ab000"] = master_t_cocode; //公司代码 dr["ab001"] = filecontent[length * i + 6];//储位区代码 dr["ab002"] = filecontent[length * i + 1];//材料号 dr["ab003"] = date; //日期 dr["ab004"] = time; //时间 dr["ab005"] = "1"; //出入别 dr["ab006"] = sarr_code[0]; //订单单别 dr["ab007"] = sarr_code[1]; //订单单号 dr["ab008"] = sarr_code[2]; //订单序号 dr["ab009"] = filecontent[length * i + 2];//交货总数量 dr["ab010"] = ""; //批号 dr["ab011"] = filecontent[length * i + 5];//周期 dr["ab012"] = "y"; //状态 dr["ab013"] = filecontent[length * i + 3];//交货件数 dr["ab014"] = filecontent[length * i + 4];//每箱数量 dr["ab021"] = master_t_empno; //xuser dr["ab022"] = date; //xdate dr["ab023"] = time; //xtime } } else { dt = **; } return dt; } //读取文本中的数据项列表 private l**t<string> getl**t(string filename,int length) { l**t<string> filecontent = new l**t<string>(); if (filename != "") { using (filestream fs = new filestream(filename, filemode.open)) { string s1 = ""; string s2 = ""; boolean b = false; streamreader sr = new streamreader(fs, encoding.getencoding("gb2312")); //读取文本内容 int i = 0; while (sr.peek() > 0) { if (b) { s1 = sr.readline().trim(); if (s1 != "") { if (s1 == "x") //x前面的项-去掉 { if (filecontent.count > 0) if (filecontent[i - 1] == s2) { filecontent.removeat(filecontent.count - 1); b = false; i--; } } else if (s1 == s2) //相临重复项-无操作 { } else { if (checkinput(i, s1,length)) { filecontent.add(s1); i++; } b = false; } } } else { s2 = sr.readline().trim(); if (s2 != "") { if (s2 == "x") //x前面的项-去掉 { if (filecontent.count > 0) if (filecontent[i - 1] == s1) { filecontent.removeat(filecontent.count - 1); b = true; i--; } } else if (s2 == s1) //相临重复项-无操作 { } else { if (checkinput(i, s2,length)) { filecontent.add(s2); i++; } b = true; } } } } sr.close(); } } return filecontent; } #region 导入验证 /// <summary> /// 检查输入字符串的格式 /// </summary> /// <param name="index">对比索引</param> /// <param name="str">对比字符串</param> /// <param name="length">条码个数</param> private boolean checkinput(int index, string str, int length) { index = index % length; if (length == 5) { if (index == 0) { return **stringsplit(str); } if (index == 1) { return **stringsplitround(str); } if (index == 2) { return **numbersplit(str); } if (index == 3) { return **numberstring(str); } if (index == 4) { return **numberstringzero(str); } return false; } if (length == 7) { if (index == 0) { return **stringsplit(str); } if (index == 1) { return **stringsplitround(str); } if (index == 2) { return **numberstring(str); } if (index == 3) { return **numberstring(str); } if (index == 4) { return **numberstring(str); } if (index == 5) { return **numberstring(str); } if (index == 6) { return **numberstringzero(str); } return false; } return false; } /// <summary> /// 验证字符串是否只包含数字和分隔符,且可以以字母开头 /// </summary> /// <param name="str"></param> /// <returns></returns> private bool **stringsplit(string str) { if (str == ** || str == "") return false; //return regex.**match(str, "\\b[a-za-z0-9]{3,4}-[0-9]{8}-[0-9]{4}\\b"); match mch = regex.match(str, "\\b[a-za-z0-9]{3,4}-[0-9]{8}-[0-9]{4}\\b"); if (mch.value.length == str.length) return true; else return false; } /// <summary> /// 验证字符串是否只包含数字和分隔符,且可以以字母开头 /// </summary> /// <param name="str"></param> /// <returns></returns> private bool **stringsplitround(string str) { if (str == ** || str == "") return false; match mch = regex.match(str, "\\b[a-za-z0-9]{2,3}-[a-za-z0-9]+[-[0-9]{1,3}]?\\b"); if (mch.value.length == str.length) return true; else return false; } /// <summary> /// 验证字符串是否只包含数字和分隔符 /// </summary> /// <param name="str"></param> /// <returns></returns> private bool **numbersplit(string str) { if (str == ** || str == "") return false; match mch = regex.match(str, "\\b[1-9][0-9]*-[1-9][0-9]*-[1-9][0-9]*\\b"); if (mch.value.length == str.length) return true; else return false; } /// <summary> /// 验证字符串是否只包含数字 /// </summary> /// <param name="str">需判断的字符串</param> /// <returns></returns> private bool **numberstring(string str) { if (str == ** || str == "") return false; match mch = regex.match(str, "\\b[1-9][0-9]*\\b"); if (mch.value.length == str.length) return true; else return false; } /// <summary> /// 验证字符串是否只包含数字 /// </summary> /// <param name="str">需判断的字符串</param> /// <returns></returns> private bool **numberstringzero(string str) { if (str == ** || str == "") return false; match mch = regex.match(str, "\\b[0-9]*[1-9][0-9]*\\b"); if (mch.value.length == str.length) return true; else return false; } #endregion 20210311
汇率兑换计算器

类似问答
  • 啥安卓桌面是一个板块。 就像触屏版的网页那种。桌面不分页数。
    • 2024-05-27 23:37:43
    • 提问者: 未知
    360安全桌面
  • 金融信用信息基础数据库的主要功能
    • 2024-05-27 04:30:19
    • 提问者: 未知
    企业和个人信用信息基础数据库功能首先是帮助商业银行核实客户身份,杜绝信贷欺诈、保证信贷交易的合法性;其次是全面反映企业和个人的信用状况,通过获得信贷的难易程度、...
  • 从十个数里面选一个数的概率.
    • 2024-05-27 07:00:13
    • 提问者: 未知
    有0,1,2,3,4,5,6,7,8,9 a是中间某一数 ...选30回的话,一定是选完后把数放回,那么每次取到a的概率就是相互独立的,取不到a的概率是9/10,所以答案是(9/10)的30次方
  • 数据库系统中 数据的一致性指的是什么?
    • 2024-05-27 10:27:16
    • 提问者: 未知
    同步更新。简单说来就是一条5261column的数据4102在多个表中保持同步更新,1653 一般用foreign key实现mapping 比如两张表table1,table2 其中table1的uid column是primary key,table2的uid column是foreign key, 则当修改table1的uid column的一row时,table2的对应row也会自动更新。...
  • 经传软件的数据是哪里的?听说炒股数据很重要。
    • 2024-05-27 05:58:48
    • 提问者: 未知
    他们的软件都是交易所来的,我到他们公司看过,他们给我看了数据授权证书,好像交易所的官方网站也查得到他们的名字,不错。楼上说的不错。信号是非常的重要。
  • 上网看网页或者看股票数据不停的抖动
    • 2024-05-27 01:30:37
    • 提问者: 未知
    上网看网页或者看股票数据不停的抖动 我的网页打开后看里面的内容或者看股票数据里面的内容不停的上下抖动是怎么回事,怎么解决。下载驱动精灵检查一下显卡驱动 如果是屏幕...
  • 怎么将两个excel表格合并后去除重复数据
    • 2024-05-27 04:18:02
    • 提问者: 未知
    1首先打开wps表格,打开后默认的是“开始”菜单,我们点击“数据”菜单2点击“数据”菜单后,我们来选择a列,然后点击“重复项”3点击“重复项”后,在弹出的下拉列表中,点击“删除重复项”4接下来,在“删除重复项”的窗口中点击“删除重复项”5之后会看到弹出一个提示框,这里不用管,点击确定就好了。6最好我们看到,多出的“张三”已经被删除了end
  • 自拟一个网络数据库有关功能模块,阐述功能并写出相应的代码
    • 2024-05-27 21:53:09
    • 提问者: 未知
    计算机专业**范文总结:能源管理系统(em s)是现代电网运行的必不可少的手段,但我们的电力公司em s应用软件实用度低。近日,**电力公司的调度部门em s的实际要求和考核标准,这一目标的调度部门。**em s国内网省调大多不具有统计功能,湖北em s em s监督管理系统的实际需求的基础上的国调中心,研究和实施的检查。在em s核心,结合系统深度与外部软件编程,人工设置和em s应用软件运行的...
  • 数据银行里面的文件怎么下载下来
    • 2024-05-27 06:54:08
    • 提问者: 未知
    如果没有下载的选项,直接拷屏即可。
  • 数据库安全的重要性
    • 2024-05-27 09:56:36
    • 提问者: 未知
    正 1、保护敏感信息和数据资产 大多数企业、组织以及**部门的电子数据都保存在各种数据库中。他们用这些数据库保存一些个人资料,比如员工薪水、医疗记录、员工个人资料等等。数据库服务器还掌握着敏感的金融数据,包括交易记录、商业事务和帐号数据、战略上的或者专业的信息,比如专利和工程数据,甚至市场计划等等应该保护起来防止竞争者和其他非法者获取的资料。数据库服务器还保存着一些有关员工详细资料的东西比如银行帐...
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。