C# 自己用到的几个参数转换方法
/// <summary>
/// Method:CommandHelper
/// Author:Liuyangyi
/// Data:2016-05-10
/// </summary>
public class Command
{ /// 提供标准 MD5 加密的方法
/// </summary>
/// <param name="cort"></param>
/// <returns></returns>
/// <summary>
/// 标准的md5密码加密算法
/// </summary>
/// <param name="toCryString"></param>
/// <returns></returns>
public static string Ext_GetStandMD5(string toCryString)
{
MD5CryptoServiceProvider hashmd5;
hashmd5 = new MD5CryptoServiceProvider();
return BitConverter.ToString(hashmd5.ComputeHash(Encoding.Default.GetBytes(toCryString.Trim()))).Replace("-", "").ToUpper();
}
/// <summary>
/// Unix时间戳
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public static string DateTimeToUnixTimestamp()
{
DateTime dateTime = DateTime.Now;
var start = new DateTime(, , , , , , dateTime.Kind);
return Convert.ToInt64((dateTime - start).TotalSeconds).ToString();
} /// <summary>
/// 时间格式
/// </summary>
/// <returns></returns>
public static string DateTimestamp()
{
DateTime dateTime = DateTime.Now;
return dateTime.ToString("yyyy-MM-dd HH:mm:ss");
}
/// <summary>
/// 除去数组中的空值和签名参数并以字母a到z的顺序排序
/// </summary>
/// <param name="dicArrayPre">过滤前的参数组</param>
/// <returns>过滤后的参数组</returns>
public static Dictionary<string, object> FilterPara(SortedDictionary<string, object> dicArrayPre)
{
Dictionary<string, object> dicArray = new Dictionary<string, object>();
foreach (KeyValuePair<string, object> temp in dicArrayPre)
{
if (temp.Key.ToLower() != "sign" && temp.Value != null && temp.Value != "")
{
dicArray.Add(temp.Key, temp.Value);
}
} return dicArray;
} /// <summary>
///
/// 排序加清除为空的参数
/// </summary>
/// <param name="o"></param>
/// <returns></returns>
public static Dictionary<String, Object> ToMap(Object o)
{
SortedDictionary<String, Object> map = new SortedDictionary<string, object>(); Type t = o.GetType(); PropertyInfo[] pi = t.GetProperties(BindingFlags.Public | BindingFlags.Instance); foreach (PropertyInfo p in pi)
{
MethodInfo mi = p.GetGetMethod(); if (mi != null && mi.IsPublic)
{
map.Add(p.Name, mi.Invoke(o, new Object[] { }));
}
} return FilterPara(map); } /// <summary>
/// 把数组所有元素,按照“参数=参数值”的模式用“&”字符拼接成字符串
/// </summary>
/// <param name="dicArray"></param>
/// <returns></returns>
public static string CreateLinkString(Dictionary<string, object> dicArray)
{
StringBuilder prestr = new StringBuilder();
foreach (KeyValuePair<string, object> temp in dicArray)
{
if (temp.Key.ToLower() != "sign" && temp.Key.ToLower() != "pid" && temp.Value != null && temp.Value != "")
{
prestr.Append(temp.Key + "=" + temp.Value.ToString().Replace(" ", "") + "&");
}
}
//去掉最後一個&字符
int nLen = prestr.Length;
prestr.Remove(nLen - , ); return prestr.ToString();
} }
C# 自己用到的几个参数转换方法的更多相关文章
- Mysql - 参数修改
概述 mysql的参数可以分为两类:a. 动态参数,数据库启动期间能被修改,而修改又分为两种(global级,session级).b. 静态参数,即数据库启动期间不能修改. 接下来利用参数wait_t ...
- 各种url编码
URLENCODE和URLDECODE是比较常用的URL参数转换方法,为以后使用方便,自己归类一下. 一.JavaScript: 编码:encodeURIComponent(URIString) ...
- JSPatch 实现原理详解
原文地址https://github.com/bang590/JSPatch/wiki/JSPatch-%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86%E8%AF%A6%E8 ...
- 【转】各种语言中的urlencode方法
URLENCODE和URLDECODE是比较常用的URL参数转换方法,为以后使用方便,自己归类一下. 原文地址:http://blog.sina.com.cn/s/blog_3f195d25010 ...
- 如何自己编写一个easyui插件续
接着如何自己编写一个easyui插件继续分享一下如何从上一节写的“hello”插件继承出一个“hello2”. 参考了combobox的源码中继承combo,当然我这个简单很多了.都是根据自己的理解来 ...
- 如何自己编写一个easyui插件
本文介绍如何通过参考1.4.2版本的progressbar的源码自己编写一个HelloWorld级别的easyui插件,以及如何拓展插件的功能. 有利于我们理解easyui插件的实现,以及了解如何对e ...
- 各种语言中的urlencode方法
转载自:http://blog.sina.com.cn/s/blog_3f195d2501000a9b.html URLENCODE和URLDECODE是比较常用的URL参数转换方法,为以后使用方便, ...
- mooctest项目总结 【转载】
原文链接 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3 ...
- JSBridge的原理
前言 参考来源 前人栽树,后台乘凉,本文参考了以下来源 github-WebViewJavascriptBridge JSBridge-Web与Native交互之iOS篇 Ios Android Hy ...
随机推荐
- 洛谷 2048 BZOJ 2006 [NOI2010]超级钢琴
[题解] 贪心题.设五元组(mx,pos,l,r1,r2)表示最大值为mx,取得最大值的区间右端点为pos,区间左端点为l,区间右端点的可选区间为[r1,r2]. 每次从堆里拎出最大值,然后把这个区间 ...
- [bzoj4567][Scoi2016][背单词] (贪心+trie树)
Description Lweb 面对如山的英语单词,陷入了深深的沉思,“我怎么样才能快点学完,然后去玩三国杀呢?”.这时候睿智 的凤老师从远处飘来,他送给了 Lweb 一本计划册和一大缸泡椒,他的计 ...
- shrink&split
shrink将分片数按因子缩减.hard link segment文件.因缩减前后hash一致,不需要rehash.如:0 ,1 , 2, 3, 4, 5, 6, 7, 8.9个分片缩减成3个:0 [ ...
- Java8-如何将List转变为逗号分隔的字符串--https://blog.csdn.net/benjaminlee1/article/details/72860845
Java8-如何将List转变为逗号分隔的字符串 https://blog.csdn.net/benjaminlee1/article/details/72860845
- Android NumberProgressBar:动态移动显示百分比进度的进度条
Android NumberProgressBar:动态移动显示百分比进度的进度条 NumberProgressBar是github上一个开源项目,其项目主页是:https://github.c ...
- poj 1379 模拟退火法
/* 模拟退火法: 找到一些随机点,从这些点出发,随机的方向坐标向外搜索: 最后找到这些随机点的最大值: 坑://if(xx>-eps&&xx<x+eps&& ...
- IM聊实现客户端之间信息交互需求文档
终于放假啦~之前学习太忙很多知识点都没有写博客,可能自己学会了但没有分享给大家,接下来几天我可能把一些学过的东西整理成博客发出来供大家相互学习交流. 需求分析说明书 HuaXinIM聊软件 潘浩 20 ...
- Java配置方式读取外部的资源配置文件
通过@PropertySource可以指定读取的配置文件,通过@Value注解获取值,具体用法: package cn.qlq; import org.springframework.context. ...
- 26、Java并发性和多线程-线程池
以下内容转自http://ifeve.com/thread-pools/: 线程池(Thread Pool)对于限制应用程序中同一时刻运行的线程数很有用.因为每启动一个新线程都会有相应的性能开销,每个 ...
- CentOS yum时出现“Could not retrieve mirrorlist ”的解决的方法——resolv.conf的配置
原因:没有配置resolv.conf 解决方法: 到/etc文件夹下配置resolv.conf增加nameserver IP,如: nameserver 8.8.8.8 nameserver 8.8. ...