当前位置: 首页 > news >正文

网站页面的宽度网络整合营销4i原则

网站页面的宽度,网络整合营销4i原则,母婴网站怎么做,廊坊建设局网站系列文章 C#底层库–程序日志记录类 本文链接:https://blog.csdn.net/youcheng_ge/article/details/124187709 C#底层库–MySQLBuilder脚本构建类(select、insert、update、in、带条件的SQL自动生成) 本文链接:https://blog.csd…

系列文章

C#底层库–程序日志记录类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/124187709

C#底层库–MySQLBuilder脚本构建类(select、insert、update、in、带条件的SQL自动生成)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/129179216

C#底层库–MySQL数据库访问操作辅助类(推荐阅读)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126886379

C#底层库–XML配置参数读写辅助类(推荐阅读)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/129175304

C#底层库–获取文件版本和MD5值
本文链接:https://blog.csdn.net/youcheng_ge/article/details/112513871

C#底层库–FilesHelper文件辅助类(删除目录文件、复制文件到指定目录)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126887161

C#底层库–Excel操作帮助库(可读加密Excel表格)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126887445

C#底层库–随机数生成器
本文链接:https://blog.csdn.net/youcheng_ge/article/details/126888812

C#底层库–RegexHelper正则表达式辅助类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/109745286

C#底层库–CSV和DataTable相互转换
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128804367

C#底层库–Image图片操作类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128805298

C#底层库–JSON使用教程_详细(序列化、反序列化、转DataTable)
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128805705

C#底层库–cookie使用教程
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128816347

C#底层库–Session操作辅助类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128817096

C#底层库–Image图片操作类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128805298

C#底层库–数据库类型与程序类型转换器
本文链接:https://blog.csdn.net/youcheng_ge/article/details/128817610

C#底层库–StringExtension字符串扩展类
本文链接:https://blog.csdn.net/youcheng_ge/article/details/129520428

文章目录

  • 系列文章
  • 前言
  • 一、底层库作用
  • 二、底层库源码
  • 三、调用方法
    • 3.1 指定字符串转换为指定进制的数字形式
    • 3.2 数字序号转换为指定的进制形式字符串
  • 四、项目样例
  • 五、资源链接


前言

本专栏为【底层库】,主要介绍编程过程中 通用函数。我们将这些通用固化的源码,进行重写、封装、拓展,再进行单元测试、集成测试、beta测试,最终形成通用化模板,这里我们称为“底层库”。

作为研发人员的你,并不需要花大量时间,研究“底层库”的含义,及“底层库”的实现方法。你只需要几行调用代码,就可以解决项目上碰到的难题。而底层库使用方法,本专栏均有详细介绍,也有项目应用场景。

底层库已实现功能:MySQL脚本构建器、MySQL数据库访问操作、参数配置文件读写、加解密算法、日志记录、HTTP通信、Socket通信、API前后端交互、邮件发送、文件操作、配置参数存储、Excel导入导出、CSV和DataTable转换、压缩解压、自动编号、Session操作等。

本专栏会持续更新,不断优化【底层库】,大家有任何问题,可以私信我。本专栏之间关联性较强(我会使用到某些底层库,某些文章可能忽略介绍),如果您对本专栏感兴趣,欢迎关注,我将带你用最简洁的代码,实现最复杂的功能。

需求源自于工作,业务部门提出去除“0 和 O字符 ”,所以系统自带的进制转换方法,已经不再适用,我们需要自己开发底层库–自定义进制转换器,支持任意进制的转换。
在这里插入图片描述

在这里插入图片描述

一、底层库作用

用于顺序编号,复杂业务单据号生成,可以阅读《【C#】编号生成器(定义单号规则、固定字符、流水号、业务单号)》
在这里插入图片描述
作用:生成带顺序的编号,可以去除易混淆字符、不需要字符,比如说,数字0 和 字母O容易混淆,可以去除。计算机世界第一个数字从0开始,不符合人们习惯,可以去除0,从1开始计数。

二、底层库源码

创建数字转换类,ConvertNumber.cs,复制以下代码。

using System;
using System.Collections.Generic;
using System.Linq;namespace DLQRLabel
{/// <summary>/// 自定义进制转换器,非系统Convert.ToString()方式/// 创建人:gyc/// 创建时间:2023-04-29/// 说明:用于顺序编号,业务单号可以阅读《【C#】编号生成器(定义单号规则、固定字符、流水号、业务单号)】》/// 本文只适用于 123456789 这类,支持16进制、32进制,支持跳过容易混淆的字符。/// 使用过程中发现错误,请联系作者修改 https://blog.csdn.net/youcheng_ge。/// </summary>public class ConvertNumber{/// <summary>/// 属性:字符编号/// </summary>public string Characters{get;set;}/// <summary>///属性:字符长度/// </summary>public int Length{get{if (Characters != null)return Characters.Length;elsereturn 0;}}/// <summary>/// 构造方法/// </summary>/// <param name="a_intDigit">进制位数(2进制、8进制、10进制、16进制、32进制)</param>public ConvertNumber(int a_intDigit){switch (a_intDigit){case 2:Characters = "01";break;case 8:Characters = "01234567";break;case 10:Characters = "0123456789";break;case 16:Characters = "0123456789ABCDEF";break;case 32:Characters = "123456789ABCDEFGHJKLMNPQRSTVWXYZ";break;default:Characters = "0123456789";break;}}/// <summary>/// 构造方法(根据字符长度,创建进制)/// </summary>/// <param name="characters">字符</param>public ConvertNumber(string characters){Characters = characters;}/// <summary> /// 数字序号转换为指定的进制形式字符串 /// </summary> /// <param name="a_longNumber">数字序号</param> /// <returns></returns> public string ToString(long a_longNumber){List<string> result = new List<string>();long t = a_longNumber;while (t > 0){var mod = t % Length;t = Math.Abs(t / Length);var character = Characters[Convert.ToInt32(mod)].ToString();result.Insert(0, character);}return string.Join("", result.ToArray());}/// <summary>/// 指定字符串转换为指定进制的数字形式/// </summary>/// <param name="a_str">字符串</param>/// <returns></returns>public long FromString(string a_str){long result = 0;int j = 0;//字符串按字符倒序分割foreach (var ch in a_str.ToCharArray().Reverse().ToArray()){if (Characters.Contains(ch)){int index = Characters.IndexOf(ch); //所在位置long baseNum = (long)Math.Pow(Length, j);//计算次方,进制*指数result += index * baseNum;j++;}}return result;}}
}

三、调用方法

3.1 指定字符串转换为指定进制的数字形式

ConvertNumber number = new ConvertNumber("123456789ABCDEFGHJKLMNPQRSTVWXYZ");
long l_intSN = number.FromString(l_strNo); //字符串转序号

3.2 数字序号转换为指定的进制形式字符串

ConvertNumber number = new ConvertNumber("123456789ABCDEFGHJKLMNPQRSTVWXYZ");
l_strNo = number.ToString(++l_intSN).PadLeft(4, '1');//序号+1 转字符串

四、项目样例

我这里从本地数据库,取得最大的编号,然后依次往后编号,确保生成的编号唯一,就是不重复。
界面元素:输入框–需要产生多少编号,按钮–执行编号生成,表格–数据展示。
在这里插入图片描述
在这里插入图片描述

五、资源链接

添加按钮代码如下,仅供大家参考,代码不完整。
使用的【底层库】,我已经封装在动态链接库 Geyc_Utils.dll 中。

private void BTN_Add_Click(object sender, EventArgs e){try{if (string.IsNullOrEmpty(text_Num.Text)){FrmTips.ShowTipsError(this, "请正确填写每批数量!");return;}//清空数据richTextBox1.Clear();m_listMain.Clear();int l_intBatchNum = Convert.ToInt32(text_Num.Text);//每批数量ConvertNumber number = new ConvertNumber("123456789ABCDEFGHJKLMNPQRSTVWXYZ");string str_MAX = DBService.GetMaxNo();long l_intSN = 0;if (string.IsNullOrEmpty(str_MAX)){str_MAX = "1111";}string l_strOutput = string.Empty;string l_strNo = str_MAX;l_intSN = number.FromString(l_strNo); //字符串转序号for (int i = 0; i < l_intBatchNum; i++){if (l_intSN == 0) //初始化为0;{l_strNo = "1111";l_intSN = 1;}else{l_intSN = number.FromString(l_strNo); //字符串转序号l_strNo = number.ToString(++l_intSN).PadLeft(4, '1');//序号+1 转字符串}PrintModel model = new PrintModel();model.supply_no = text_supply.Text;model.code_no = l_strNo;model.date = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");m_listMain.Add(model);}for (int i = 0; i < m_listMain.Count; i++){l_strOutput = l_strOutput + m_listMain[i].supply_no + "\t" +m_listMain[i].code_no + "\t" +m_listMain[i].date + "\t" +"\n";}richTextBox1.AppendText(l_strOutput);}catch (Exception ex){FrmTips.ShowTipsError(this, "程序出错:" + ex.Message);}finally{AppConfig.SetValue("batch_num", text_Num.Text.Trim());AppConfig.SetValue("supply_no", text_supply.Text.Trim());}}
http://www.hkea.cn/news/680510/

相关文章:

  • ppt模板免费下载网站不用登录seo测试工具
  • 四川建设人才网官网查询阜新网站seo
  • 太原网站开发定制百度网盘官网下载
  • 业主装修日记那个网站做的好片多多可以免费看电视剧吗
  • 租车网站建设站长之家源码
  • 昌吉州回族自治州建设局网站地产渠道12种拓客方式
  • 北京市网站公司网络项目免费的资源网
  • 电子商务网站规划、电子商务网站建设站长工具 忘忧草
  • 凡科建网关键词优化公司哪家好
  • seo排名推广工具seo公司多少钱
  • 做视频网站赚钱怎么在百度上推广自己的公司信息
  • 网站建设凡科厦门网站建设平台
  • 互联网行业pest分析福州百度快速优化排名
  • 做网站的接私活犯法吗如何对网站进行推广
  • 身高差效果图网站优化师和运营区别
  • 谷歌wordpress建站搜索引擎算法
  • .net 购物网站开发源代码发布信息的免费平台
  • 自己做一网站大学生网络营销策划书
  • 关于网站建设的文章百度域名收录提交入口
  • 国人在线做网站推广图片大全
  • 郑州网站建设七彩科技四年级说新闻2023
  • 在什么网站上做自媒体seo整站怎么优化
  • 网站开发要注意安全性公司优化是什么意思
  • 河北邢台做移动网站开通网站需要多少钱
  • 天河网站建设多少钱淘宝关键词优化
  • 中型网站 收益关键词排名查询官网
  • 网站的弹窗是怎么做的谈谈对seo的理解
  • 广州网站制作费用宁波seo外包哪个品牌好
  • 河南高端网站建设广州网站优化页面
  • 企业可以备案几个网站南昌seo实用技巧