C#类型转换类(通用类)
// /// 类型转换类 /// 处理数据库获取字段为空的情况 /// public static class DBConvert { #region------------------ToInt32类型转换------------------ /// /// 读取数据库中字符串并转换成Int32 /// 为空时返回0 /// /// object类型的值 /// Int32类型 public static int ToInt32(object obj) { int result = 0; if (IsInt(Convert.ToString(obj))) { result = Convert.ToInt32(obj); } else if (obj != null && obj is Enum) //处理非null值类型时(或者枚举) { result = ((IConvertible)obj).ToInt32(null); } return result; } /// /// 读取数据库中字符串并转换成Int32 /// 为空时返回0 /// /// string类型的值 /// Int32类型 public static int ToInt32(string str) { int result = 0; if (IsInt(str)) { result = Convert.ToInt32(str); } return result; } /// /// 判断一个字符串是否属于Int类型 /// 如果是的返回true,如果不是返回false /// /// string类型的值 /// true:是Int的字符串(即可以转换成Int类型),false:不是Int类型的字符串 public static bool IsInt(string str) { bool result = false; if (str != "" && str!=null) { Regex reg = new Regex("^[0-9]*$"); if (reg.IsMatch(str)) { result = true; } } return result; } #endregion #region------------------ToString类型转换------------------ /// /// 读取数据库中字符串并转换成string /// /// object类型的值 /// string类型 public static string ToString(object obj) { string result = ""; if (obj != null) { result = Convert.ToString(obj); } return result; } #endregion #region------------------ToDouble类型转换------------------ /// /// 判断一个字符串是否属于Double类型(包括负浮点型) /// 如果是的返回true,如果不是返回false /// /// string类型的值 /// true:是Double的字符串(即可以转换成Double类型),false:不是Double类型的字符串 public static bool IsDouble(string str) { bool result = false; if (str != "" && str != null) { Regex reg = new Regex(@"^(-?\d+)(\.\d+)?$"); if (reg.IsMatch(str)) { result = true; } } return result; } /// /// 读取数据库中字符串并转换成Int32 /// 为空时返回0 /// /// object类型的值 /// Int32类型 public static double ToDouble(object obj) { double result = 0.0; if (IsDouble(Convert.ToString(obj))) { result = Convert.ToDouble(obj); } else if (obj != null && obj is Enum) //处理枚举 { result = ((IConvertible)obj).ToDouble(null); } return result; } /// /// 读取数据库中字符串并转换成Int32 /// 为空时返回0 /// /// string类型的值 /// Int32类型 public static double ToDouble(string str) { double result = 0.0; if (IsDouble(str)) { result = Convert.ToDouble(str); } return result; } #endregion #region------------------ToDateTime类型转换------------------ /// /// 判断时间格式是否是时间类型 /// 如23:10 /// /// 要判断的字符串 /// true:是时间类型的字符串(即可以转换成时间类型),false:不是时间类型的字符串 public static bool isDateTime(string str) { bool result = false; if (str != "" && str != null) { Regex reg = new Regex("(([01]\\d)|(2[0-3])):[0-5]\\d"); if (reg.IsMatch(str)) { result = true; } } return result; } #endregion }}//"^\d+(\.\d+)?$" //非负浮点数(正浮点数 + 0)//"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数//"^((-\d+(\.\d+)?)|(0+(\.0+)?))$" //非正浮点数(负浮点数 + 0)//"^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数//"^(-?\d+)(\.\d+)?$" //浮点数C#类型转换类(通用类)的更多相关文章
- Util应用程序框架公共操作类(二):数据类型转换公共操作类(源码篇)
上一篇介绍了数据类型转换的一些情况,可以看出,如果不进行封装,有可能导致比较混乱的代码.本文通过TDD方式把数据类型转换公共操作类开发出来,并提供源码下载. 我们在 应用程序框架实战十一:创建VS解决 ...
- Util应用程序框架公共操作类(三):数据类型转换公共操作类(扩展篇)
上一篇以TDD方式介绍了数据类型转换公共操作类的开发,并提供了单元测试和实现代码,本文将演示通过扩展方法来增强公共操作类,以便调用时更加简化. 下面以字符串转换为List<Guid>为例进 ...
- Util应用程序框架公共操作类(一):数据类型转换公共操作类(介绍篇)
本系列文章将介绍一些对初学者有帮助的辅助类,这些辅助类本身并没有什么稀奇之处,如何能发现需要封装它们可能更加重要,所谓授之以鱼不如授之以渔,掌握封装公共操作类的技巧才是关键,我会详细说明创建这些类的动 ...
- poi导出excel通用类
一.关键的通用类public class PoiExportUtils { private static HSSFWorkbook workBook; public PoiExportUtils ...
- NPOI MVC 模型导出Excel通用类
通用类: public enum DataTypeEnum { Int = , Float = , Double = , String = , DateTime = , Date = } public ...
- MVC NPOI Linq导出Excel通用类
之前写了一个模型导出Excel通用类,但是在实际应用中,可能不是直接导出模型,而是通过Linq查询后获取到最终结果再导出 通用类: public enum DataTypeEnum { Int = , ...
- 利用反射实现类通用的DAO层
public void add(Object object) throws SQLException { ResultSet rs=null; PreparedStatement ps=null; C ...
- NPOI导入导出EXCEL通用类,供参考,可直接使用在WinForm项目中
以下是NPOI导入导出EXCEL通用类,是在别人的代码上进行优化的,兼容xls与xlsx文件格式,供参考,可直接使用在WinForm项目中,由于XSSFWorkbook类型的Write方法限制,Wri ...
- mongdo通用类(C#版)
日前从公司离职,很快,还没休息就步入了现在的公司,开始跟着公司的脚步走. 公司的项目基本都是大数据的,所以在数据库上大部分都是使用Mongodb和Redis,基本都是Nosql型的数据库为主.以前自己 ...
随机推荐
- U盘被识别但不显示盘符怎么样才能解决?
很多朋友在将U盘插入电脑后,会发现右下角的任务栏虽然出现了U盘的图标,但是在我的电脑中并没有显示出U盘的盘符,也就无法继续对U盘进行操作.遇到这种情况该怎么办呢?下面好系统U盘启动就告诉大家相应的解决 ...
- 制作CentOS8安装U盘时遇到的“Minimal BASH-like...”问题
---恢复内容开始--- CentOS8已经推出了,正好最近新到了块服务器硬盘需要安装系统,就拿过来尝一下鲜. 下载好iso文件后,以制作CentOS7安装盘相同的步骤,用UltroISO(软碟通)往 ...
- 十大排序C语言实现
#include<stdio.h> #include<stdlib.h> void bubbleSort(int arr[],int size); void Selection ...
- Java#Spring框架下注解解析
@Bean 定义Bean @Bean是一个方法级别上的注解,主要用在@Configuration注解的类里,也可以用在@Component注解的类里.添加的bean的id为方法名 @Configura ...
- 如何用eclipse进行jar文件打包?
直接导出runnable jar,如下图所示: 然后选择导出runnable jar: 关于library handling部分的解释如下: (1)Extract required libraries ...
- programble blending --frame buffer fetch
https://developer.arm.com/-/media/Files/pdf/graphics-and-multimedia/Efficient%20Rendering%20with%20T ...
- Error response from daemon: manifest for elasticsearch:latest not found
五孔 35个 三孔空调 3个 一开五孔 10个 一开双控 10个 两开双控 2个 一开多控 3个 ...
- C++中虚函数继承类的内存占用大小计算
计算一个类对象的大小时的规律: 1.空类.单一继承的空类.多重继承的空类所占空间大小为:1(字节,下同): 2.一个类中,虚函数本身.成员函数(包括静态与非静态)和静态数据成员都是不占用类对象的存储空 ...
- java常用检验接口control方式
@Controller public class ItemController { @Autowired private ItemService itemService; @RequestMappin ...
- TTTTTTTTTTTTTT hdu 5763 Another Meaning 哈希+dp
Another Meaning Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)T ...