.net 字符串和JSON格式的互换
近期又做了个问卷调查,问卷调查一次性要保存一二十个题目和答案!所以嘞,博主为了偷懒,就直接把答卷内容保存成了Json格式!
好处当然是很多啦! 只需一个字段就能保存整个答卷的内容! 想想都刺激!哈哈~!
好了,闲话少叙,直入正题!
首先,一般不会保存题目,要求的可能是只保存答案!比如第几题对应的调查者选的是什么答案等等!
先声明一个题目类Expreience,当然,你如果想连题目一起加上的话,你可以多声明几个字段嘛,是吧!
代码如下:
public class Expreience
{
public string exp1 { get; set; }
public string exp2 { get; set; }
public string exp3 { get; set; }
public string exp4 { get; set; }
public string exp5 { get; set; }
public string exp6 { get; set; }
public string exp7 { get; set; }
public string exp8 { get; set; }
public string exp9 { get; set; }
public string exp10 { get; set; }
}
欧克,现在我有十道题,从上面的代码就能看粗来!废话连篇,满脸嫌弃,哼哼哼~!
好吧,精神分裂患者!
声明好了题目类,接下来该把字符串改成Json格式了,注意哈!!!不要走神!
你快点儿吧,啰嗦!
好吧,现在来看下转化代码:
Hashtable hash = new Hashtable();
hash["exp1"] = "选A";
hash["exp2"] = "选博主";
hash["exp3"] = "回去好好养着";
hash["exp4"] = "小白";
hash["exp5"] = "去捡过来";
hash["exp6"] = "小白";
hash["exp7"] = "去把粑粑的鞋叼过来";
hash["exp8"] = "小白";
hash["exp9"] = "赏你根骨头";
hash["exp10"] = "旺旺旺";
JavaScriptSerializer ser = new JavaScriptSerializer();
string ansJsonStr = ser.Serialize(hash);
声明Hashtable类,以键值对的形式存储每道题对应的值,然后转换成Json字符串;切记:hash["exp1"]中的exp1要和题目类Expreience中的exp1对应起来!
记得引用:
using System.Web.Script.Serialization;
using System.Collections;
好了,就这么简单,看看转换后的格式:
{
"exp4": "小白",
"exp9": "赏你根骨头",
"exp6": "小白",
"exp1": "选A",
"exp3": "回去好好养着",
"exp8": "小白",
"exp5": "去捡过来",
"exp10": "旺旺旺",
"exp7": "去把粑粑的鞋叼过来",
"exp2": "选博主"
}

呃呃呃。。。虽是没按顺序转换,但绝对是正确滴! 好尴尬呀!!!这破机器~!呵呵呵...
好了,来看下数据库保存的状况:

好神奇哟,真是一个字段存储的啊!让你装逼,看看你怎么取值,哼哼~!
取值?哎呀,我好怕呀!难倒我了哟!!!哈哈哈,逗你玩儿!
欧克,现在来说说,如何将这段字符串再转化成可以随意取值的类型,方便我们取任何一道题的值!
能装进去,肯定就能释放粗来呀!你看着吧!哈哈~
少啰嗦,快点儿!不讲的话,尿点儿就来了!
好好好,闲言少叙,Go On!!!
转换回来其实也很简单的,上代码:
public Expreience GetData(string jsonStr)
{
return (Expreience)Newtonsoft.Json.JsonConvert.DeserializeObject(jsonStr, typeof(Expreience));
}
好了,转换好了! 什么?怎么用?这都不会,真是够笨的!好吧,继续》》》
public string GetDataToString(string jsonStr)
{
if (string.IsNullOrEmpty(jsonStr))
return "";
Expreience strtemp = GetData(jsonStr);
string dataTemp = "第1题:" + strtemp.exp1 +
"第2题:" + strtemp.exp2 +
"第3题:" + strtemp.exp3 +
"第4题:" + strtemp.exp4 +
"第5题:" + strtemp.exp5 +
"第6题:" + strtemp.exp6 +
"第7题:" + strtemp.exp7 +
"第8题:" + strtemp.exp8 +
"第9题:" + strtemp.exp9;
return dataTemp;
}
好了,按顺序取值了!
就这么简单!嗯嗯嗯!
拙文一篇,忘各位赐教!
讨论群: 225443677 欢迎骚扰,不报警的,也不会怀孕的!真的,加了的人都知道!
谢谢!
.net 字符串和JSON格式的互换的更多相关文章
- 如何识别一个字符串是否Json格式
前言: 距离上一篇文章,又过去一个多月了,近些时间,工作依旧很忙碌,除了管理方面的事,代码方面主要折腾三个事: 1:开发框架(一整套基于配置型的开发体系框架) 2:CYQ.Data 数据层框架(持续的 ...
- List转换成json格式字符串,json格式字符串转换成list
一.List转换成json字符串 这个比较简单,导入gson-x.x.jar, List<User> users = new ArrayList<User>(); Gson g ...
- JS实现的一个query字符串转Json格式数据的方法
输入字符串的格式是 a=1&b=2&c=3 $.par2Json = function (string, overwrite) { var obj = {}, pairs = stri ...
- JavaScript中,JSON格式的字符串与JSON格式的对象相互转化
前言:JSON是一个独立于任何语言的数据格式,因此,严格来说,没有“JSON对象”和“JSON字符串”这个说法(然而”菜鸟教程“和”W3school“使用了“JSON对象”和“JSON字符串”这个说法 ...
- js实现字符串转JSON格式
在浏览器前端实现字符串转JSON格式,有多种方法,总结如下: 方法1. js函数,eval() 语法: var obj = eval ("(" + txt + ")&qu ...
- 关于C# webapi ,接口返回字符串和json格式 ,返回值中有反斜杠
最近遇到一个比较郁闷的问题,记录一下 写了一个接口,想返回json 数据,但是返回值中总是带有反斜杠... ,下面来看原因 首先,配置 webapi的路由 App_Start 文件夹下 ,WebApi ...
- 字符串转换json格式
前台json转字符串传递后台时 用到: data: JSON.stringify({ "zh": zhanghao, "mm": mima }), 当后台返回前 ...
- js字符串转json格式与json对象转字符串
json字符串----->json对象json对象------>json字符串 使用JSON.parse()函数 this.dataList = JSON.parse(dataList); ...
- JavaScript 字符串转json格式
第一种:浏览器支持的转换方式(Firefox,chrome,opera,safari,ie)等浏览器: JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON. ...
随机推荐
- 【C#】无损转换Image为Icon 【C#】组件发布:MessageTip,轻快型消息提示窗 【C#】给无窗口的进程发送消息 【手记】WebBrowser响应页面中的blank开新窗口及window.close关闭本窗体 【手记】调用Process.EnterDebugMode引发异常:并非所有引用的特权或组都分配给呼叫方 【C#】DataRowState演变备忘
[C#]无损转换Image为Icon 如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle ...
- 答读者问(6):有关IT培训和毕业之前的迷茫等问题
近期在微博上与一些读者朋友们交流,发现大家对自己的未来都比較的关心.有些朋友认为在大学里面没有学到什么东西,问我要不要到一些IT培训机构去"速成".另一些朋友即将毕业,不知道自己走 ...
- 机器学习笔记之PCA-SIFT总结
不多说,直接上干货! PCA-SIFT算法在描述子构建上作了创新,主要是 将统计学中的主成分分析(PCA)应用于对描述子向量的降维,以提高匹配效率 . PCA 的原理是:一般有效信号的方差大,噪声的方 ...
- 初步认识Tensorflow
不多说,直接上干货! TensorFlow 是一个开源软件库,用于使用数据流图进行数值计算.换句话说,即是构建深度学习模型的最佳方式. Tensorflow的官网 https://www.tensor ...
- Real-Time Compressive Tracking 论文笔记
总体思想 1 利用符合压缩感知RIP条件的随机感知矩阵对多尺度图像进行降维 2 然后对降维的特征採用简单的朴素贝叶斯进行分类 算法主要流程 1 在t帧的时候,我们採样得到若干张目标(正样本)和背景(负 ...
- java.lang.ClassCastException: $Proxy0 cannot be cast to javax.servlet.ServletRequestWrapper
我是在myeclipse 8.5使用代理的时候遇到这个问题的.因为我是跟着视频敲的,所以按道理代码是不会有问题..最后经过我百折不挠的折腾,我发现问题的根源 是 myeclipse自带的tomcat. ...
- Codeforces Round #261 (Div. 2)——Pashmak and Graph
题目链接 题意: n个点.m个边的有向图.每条边有一个权值,求一条最长的路径,使得路径上边值严格递增.输出路径长度 )) 分析: 由于路径上会有反复点,而边不会反复.所以最開始想的是以边为状态进行DP ...
- linux下jiffies定时器和hrtimer高精度定时器【转】
本文转载自:http://blog.csdn.net/dosculler/article/details/7932315 一.jiffies定时器,HZ=100,精度只能达到10ms. 注:采用jif ...
- 服务器mysql授权连接用户
以下是创建到写入到删除,到drop的全部的过程: //1:创建数据库 create database it1110; //2:进入这个数据库 Use it1110; //3:创建一个数据表 Creat ...
- BZOJ_2844_albus就是要第一个出场_线性基
BZOJ_2844_albus就是要第一个出场_线性基 Description 已知一个长度为n的正整数序列A(下标从1开始), 令 S = { x | 1 <= x <= n }, S ...