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请求中的参数 ...
随机推荐
- FTP是否可以修改为其它端口?
对服务器的ftp端口进行了修改,把21端口改了,比如221端口,就这样用221连接的时候,连接登录成功,但打不开目录,为何,总结如下: 1.完成一个FTP的传输过程不仅仅只需要21一个端口,而是2个端 ...
- 用脚本创建和恢复 DB2数据库
CREATE DATABASE AUTOMATIC STORAGE YES ON 'C:\' DBPATH ON 'C:\' USING CODESET GBK TERRITORY CN COLLAT ...
- ASMCMD命令
安装好用的rlwrap工具,在环境变量里添加如下,就能实现显示当前路径(目录),目录补全的方便功能 alias asmcmd='rlwrap -r -i asmcmd –p' asmcmd>he ...
- Oracle性能优化
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE的解析器按照 从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最 ...
- [Tools] Eclipse XML 注释和撤销注释
eclipse中编辑java或C/C++文件时,注释的快捷键均为 "CTRL + / ",编辑xml文件时,该快捷键无效. eclipse XML 注释:CTRL + SHIFT ...
- 在Window的IIS中创建FTP的Site并用C#进行文件的上传下载
文件传输协议 (FTP) 是一个标准协议,可用来通过 Internet 将文件从一台计算机移到另一台计算机. 这些文件存储在运行 FTP 服务器软件的服务器计算机上. 然后,远程计算机可以使用 FTP ...
- LeetCode——Reverse Integer(逆置一个整数)
问题: Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return –321 Ha ...
- 几种方式实现Javaweb页面跳转
背景: 自己经手的一个java项目要实现带参页面跳转和页面跳转,完成任务后,总结一下自己知道了的几种方式. 实现: 首先我们有两大种方式来实现页面跳转:1.JS(javascript):2 ...
- 时间模块。。time
- 06_Java多线程、线程间通信
1. 线程的概念 1.1多进程与多线程 进程:一个正在执行的程序.每个进程执行都有一个执行顺序,该顺序是一个执行路径,或叫一个控制单元. 一个进程至少有一个线程. 线程:就是进程中的一个独立 ...