C#_数据转换 实用方法
【String转Array】
string str = "123asd456asd789";
单字符: string[] a0 = str.Split('a');
多字符: string[] a1 = Regex.Split(str, @"asd"); //using System.Text.RegularExpressions;
【Array转String】
int[] i = { 12, 34, 123, 4, 12, 123, 54, 5, 122, 23 };
string str=string.Join("",i);
【JSON转List/Class】using Newtonsoft.Json;
使用 JsonConvert.DeserializeObject
string jsonStr = "[{\"id\":1,\"name\":\"liuph1\",\"age\":20},{\"id\":2,\"name\":\"liuph2\",\"age\":21}]";
List<className> ls = JsonConvert.DeserializeObject<List<className>>(jsonStr);
【List/Class转JSON】using Newtonsoft.Json;
使用 JsonConvert.SerializeObject
string jsonStr = JsonConvert.SerializeObject(ls);
【string转byte[]】
byte[] bt = Encoding.UTF8.GetBytes("Hello World!");//string=>byte[]
【byte[]转string】
string str = Encoding.Default.GetString(bt);//byte[]=>string
【URL转码】
string en= HttpUtility.UrlEncode("http://www.baidu.com");
【URL解码】
string de= HttpUtility.UrlDecode(en);
【自定义实体之间的转换】
用explicit来定义. 以下代码 可以实现 test和test1之间的转换。
test1 t1 = new test1();
test t = new test();
t=(test)t1;
t1=(test1)t;
public class test
{
public int Id;
public string Name;
public DateTime Time = DateTime.Now;
public static explicit operator test(test1 t)
{
return new test
{
Id = t.Id,
Name = t.Name + t.Time.ToString("yyyy-MM-dd HH:mm:ss"),
Time = t.Time
};
}
}
public class test1
{
public int Id;
public string Name;
public DateTime Time = DateTime.Now;
public static explicit operator test1(test t)
{
return new test1
{
Id = t.Id,
Name = t.Name + t.Time.ToString("yyyy-MM-dd HH:mm:ss"),
Time = t.Time
};
}
}
获取时间戳
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(, , ));
return (time - startTime).TotalSeconds.ToString("");
集合ToDictionary时key必须唯一,可以用ToLookUp,相当于Dictionary<key,T>或Dictionary<key,List<T>>
var lss = ls.ToLookup(x => x.userId);//ls是一个List
foreach (var item in lss)
{
var key = item.Key;
foreach (var item1 in item)
{
var val = item1.userName + item1.password;
}
}
C#_数据转换 实用方法的更多相关文章
- Repeater为空时显示“暂无数据”,很方便实用方法
Repeater为空时显示“暂无数据”,很方便实用方法 <FooterTemplate> <asp:Label ID="lblEmptyZP" Text=&q ...
- js实用方法记录-js动态加载css、js脚本文件
js实用方法记录-动态加载css/js 附送一个加载iframe,h5打开app代码 1. 动态加载js文件到head标签并执行回调 方法调用:dynamicLoadJs('http://www.yi ...
- js实用方法记录-简单cookie操作
js实用方法记录-简单cookie操作 设置cookie:setCookie(名称,值,保存时间,保存域); 获取cookie:setCookie(名称); 移除cookie:setCookie(名称 ...
- Python中os和shutil模块实用方法集…
Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...
- Python中os和shutil模块实用方法集锦
Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...
- js实用方法记录-指不定哪天就会用到的js方法
js实用方法记录-指不定哪天就会用到的js方法 常用或者不常用都有 判断是否在微信浏览器中 测试代码:isWeiXin()==false /** * 是否在微信中 */ function isWeix ...
- bootstrapValidator.js,最好用的bootstrap表单验证插件 简单实用方法
实用方法 1.引入 在有jquery和bootstrap的页面里引入bootstrapValidator.js和bootstrapValidator.css文件 2. 按照bootstrap的表单组件 ...
- 11.5 Android显示系统框架_Vsync机制_黄油计划_三个方法改进显示系统
5. Vsync机制5.1 黄油计划_三个方法改进显示系统vsync, triple buffering, vsync虚拟化 参考文档:林学森 <深入理解Android内核设计思想>第2版 ...
- javascript代码实用方法实现
javascript代码实用方法实现 针对现在大家平时开发中,都会写一些重复性的js处理代码,今天总结了几个比较常用的方法实现.获取get请求参数.去字符串空格. 1.获取get请求中的参数 ...
随机推荐
- Java简明教程
Java与C++比较概况 C++ Java class Foo { // 声明 Foo 类 public: int x; // 成员变量 Foo(): x() { // Foo 的构造函数Constr ...
- 解决css样式被内置样式覆盖的问题
.preImg { height:400px !important } <img id="preImg" class="preImg" style=&qu ...
- angularjs 权威指南 版本 1.2.6
1 $rootScope run : run 方法初始化全局的数据 ,只对全局作用域起作用 如$rootScope <script src="http://apps.bdimg.c ...
- jquery判断当前设备是手机还是电脑并跳转
<script type="text/javascript"> var commonURL = 'http://xxxx.com/'; function mobile_ ...
- [Unity3D插件]2dtoolkit系列二 动画精灵的创建以及背景图的无限滚动
经过昨天2dtoolkit系列教程一的推出,感觉对新手还有有一定的启发作用,引导学习使用unity 2dToolKit插件的使用过程,今天继续系列二——动画精灵的创建,以及背景图的无限循环滚动,在群里 ...
- 《数据结构与算法分析》学习笔记(三)——链表ADT
今天简单学习了下链表,待后续,会附上一些简单经典的题目的解析作为学习的巩固 首先要了解链表,链表其实就是由一个个结点构成的,然后每一个结点含有一个数据域和一个指针域,数据域用来存放数据,而指针域则用来 ...
- Linux学习笔记(21) Linux日志管理
1. 简介 (1) 日志服务 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服务的使用,还是日志文件的格式 ...
- CLR 初步
1. 源代码编译为托管模块 程序在.NET框架下运行,首先要将源代码编译为 托管模块.CLR是一个可以被多种语言所使用的运行时,它的很多特性可以用于所有面向它的开发语言.微软开发了多种语言的编译器,编 ...
- position之absolute与relative 详解
absolute:绝对定位: relative:相对定位: 唉,以前只是知是知道这两个单词的汉语意思,然后呢,,,怎么用...也是摸凌两可的用.终于抽出时间来看看了: 1.绝对定位:absulute ...
- Android 中常用的布局
一.线性布局----LinearLayout horizontal 水平 <?xml version="1.0" encoding="utf-8"?& ...