C# 各种类型的转换
- /// <summary>
- /// 一些常用的方法
- /// 1、一些高效的转换方法
- /// </summary>
- public class Util
- {
- #region Object转换为Int32
- /// <summary>
- /// Object转换为Int32
- /// </summary>
- /// <param name="o">Object</param>
- /// <returns>int 报错也返回0</returns>
- public static int ConvertToInt32(object o)
- {
- try
- {
- if (o != DBNull.Value && o != null && o.ToString() != String.Empty)
- {
- if (o is int)
- return (int)o;
- else if (o is short)
- return (int)(short)o;
- else if (o is byte)
- return (int)(byte)o;
- else if (o is long)
- return (int)(long)o;
- else if (o is double)
- return (int)(double)o;
- else if (o is float)
- return (int)(float)o;
- else if (o is decimal)
- return (int)(decimal)o;
- else if (o is uint)
- return (int)(uint)o;
- else if (o is ushort)
- return (int)(ushort)o;
- else if (o is ulong)
- return (int)(ulong)o;
- else if (o is sbyte)
- return (int)(sbyte)o;
- else
- return int.Parse(o.ToString());
- }
- else
- {
- return 0;
- }
- }
- catch
- {
- return 0;
- }
- }
- #endregion
- #region Object 转成 String
- /// <summary>
- /// Object 转成 String
- /// </summary>
- /// <param name="o">参数</param>
- /// <returns>String</returns>
- public static string ConvertToString(object o)
- {
- try
- {
- if (o != DBNull.Value && o != null && o.ToString() != String.Empty)
- {
- return o.ToString();
- }
- else
- {
- return "";
- }
- }
- catch
- {
- return "";
- }
- }
- #endregion
- #region Object转换为Decimal
- /// <summary>
- /// Object转换为Decimal
- /// </summary>
- /// <param name="o">Object</param>
- /// <returns>Decimal</returns>
- public static decimal ConvertToDecimal(object o)
- {
- try
- {
- if (o != DBNull.Value && o != null && o.ToString() != String.Empty)
- {
- decimal Num = 0;
- decimal.TryParse(o.ToString(), out Num);
- return Num;
- }
- else
- {
- return 0;
- }
- }
- catch
- {
- return 0;
- }
- }
- #endregion
- #region Object转换为Double
- /// <summary>
- /// Object转换为Double
- /// </summary>
- /// <param name="o">Object</param>
- /// <returns>Double</returns>
- public static double ConvertToDouble(object o)
- {
- try
- {
- if (o != DBNull.Value && o != null && o.ToString() != String.Empty)
- {
- double Num = 0;
- double.TryParse(o.ToString(), out Num);
- return Num;
- }
- else
- {
- return 0;
- }
- }
- catch
- {
- return 0;
- }
- }
- #endregion
- #region Object转换为Float
- /// <summary>
- /// Object转换为Float
- /// </summary>
- /// <param name="o">Object</param>
- /// <returns>Double</returns>
- public static Double ConvertToFloat(object o)
- {
- try
- {
- if (o != DBNull.Value && o != null && o.ToString() != String.Empty)
- {
- float Num = 0;
- float.TryParse(o.ToString(), out Num);
- return Num;
- }
- else
- {
- return 0;
- }
- }
- catch
- {
- return 0;
- }
- }
- #endregion
- }
C# 各种类型的转换的更多相关文章
- spring类型自动转换——@InitBinder和Converter
spring有2种类型转换器,一种是propertyEditor,一种是Converter.虽然都是类型转换,但是还是有细微差别. 所以这里以一个例子的形式来分析一下这2种类型转换的使用场景和差别. ...
- C#高级编程笔记 2016年10月8日运算符和类型强制转换
1.checked和unchecked 运算符 C#提供了checked 和uncheckde 运算符.如果把一个代码块标记为checked, CLR就会执行溢出检查,如果发生溢出,就抛出overfl ...
- SpringMVC对日期类型的转换
在做web开发的时候,页面传入的都是String类型,SpringMVC可以对一些基本的类型进行转换,但是对于日期类的转换可能就需要我们配置. 1.如果查询类使我们自己写,那么在属性前面加上@Date ...
- [改善Java代码]避开基本类型数组转换列表陷阱
开发中经常用到Arrays和Collections这两个工具类. 在数组和列表之间进行切换.非常方便.但是也会遇到一些问题. 看代码: import java.util.Arrays; import ...
- [改善Java代码]不要让类型默默转换
建议23:不要让类型默默转换 public class Client { // 光速是30万公里/秒,常量 public static final int LIGHT_SPEED = 30 * 100 ...
- 【转】java中byte数组与int类型的转换(两种方式)----不错
原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法, ...
- javascript 操作符类型隐性转换
javascript 操作符类型隐性转换 (一).一元操作符只能操作一个值的操作符叫做一元操作符1.递增和递减操作符a. 在应用于一个包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作 ...
- C语言指针类型 强制转换
关于C语言指针类型 强制转换 引用一篇文章: C语言中,任何一个变量都必须占有一个地址,而这个地址空间内的0-1代码就是这个变量的值.不同的数据类型占有的空间大小不一,但是他们都必须有个地址,而这个 ...
- OC中的类型强制转换
在Objective-C中,以数字格式组成的字符串经常需要转换为NSNumber对象后再使用.例如有一个字符串对象@"111.22",需要转为NSNumber对象,最简单的方法就是 ...
- C++四种类型的转换
在C/C++使用的语言 (type) value(您还可以使用type(value))对于显式类型转换,经常提到投.转换程序猿的精度等完全掌握手,一个传统投往往是过度使用.成为C++要根源. 为了降低 ...
随机推荐
- Little Elephant and Array CodeForces - 220B(莫队)
给一段长为n的序列和m个关于区间的询问,求出每个询问的区间中有多少种数字是 该种数字出现的次数等于该数字 的. #include <iostream> #include <cstdi ...
- Rabbit and Grass HDU - 1849 (Bash+Nim)
就是Bash 和 Nim 博弈的结合 可以直接 res ^= (Li + 1) % Mi 也可以 sg打个表 我打了个表 #include <iostream> #include &l ...
- 在 Linux服务器中安装 Python 3.6
一.服务器环境配置 在 CentOS 7 中安装 Python 之前,请确保系统中已经有了所有必要的开发依赖: # yum -y groupinstall development # yum -y i ...
- Crawl(2)
http://cuiqingcai.com/3179.html # *-* coding: UTF-8 *-* import urllib2 import cookielib import re im ...
- Mininet 系列实验(四)
实验内容 本次实验拓扑图: 在该环境下,h0 向 h1 发送数据包,由于在 mininet 脚本中设置了连接损耗率,在传输过程中会丢失一些包,本次实验的目的是展示如何通过控制器计算路径损耗速率(h0- ...
- BZOJ5058 期望逆序对 【矩乘 + 组合数学 + 树状数组】
题目链接 BZOJ5058 题解 可以发现任意两个位置\(A,B\)最终位置关系的概率是相等的 如果数列是这样: CCCCACCCCBCCCC 那么最终有\(7\)种位置关系 \((A,B)\) \( ...
- 洛谷 P3990 [SHOI2013]超级跳马 解题报告
P3990 [SHOI2013]超级跳马 题目描述 现有一个\(n\) 行 \(m\) 列的棋盘,一只马欲从棋盘的左上角跳到右下角.每一步它向右跳奇数列,且跳到本行或相邻行.跳越期间,马不能离开棋盘. ...
- 旧题新做:从idy的视角看数据结构
“今天你不写总结……!!!” 额…… 还是讲我的吧.这些考试都是idy出的题. 20170121:DFS序. ST表.线段树练习 这是第一次考数据结构. Problem 1. setsum 1 sec ...
- 公钥与私钥对HTTPS的理解(数字证书的需要)
本文转自某大牛链接 文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用.接着对数字证书做一个详细的解释,并讨论一下window ...
- C标准库函数--文件IO操作函数。
C标准库文件读写函数总结:都是对文件流进行输入输出的函数分为对文件的有格式读写以及无格式读写 一.文件的无格式读写根据每次读写字符的数量,分为三类:1.按字符读写文件 按字符读有三个函数:以下三个函数 ...