一 : 2010Excel逻辑函数:[1]if函数的嵌套使用
[excelif函数]2010Excel逻辑函数:[1]if函数的嵌套使用——简介二 : 详解ASP.NET提取多层嵌套json数据的方法
本文实例讲述了ASP.NET利用第三方类库Newtonsoft.Json提取多层嵌套json数据的方法,具体例子如下。
假设需要提取的json字符串如下:
{"name":"lily","age":23,"addr":{"city":guangzhou,"province":guangdong}}
先引用命名空间:
using Newtonsoft.Json; using Newtonsoft.Json.Linq;
可以把上面的json字符串看成一个对象,只要编写对应的类即可(如果使用VS2013进行开发,可以通过“编辑--选择性粘贴--将JSON粘贴为类”快速地将json字符串转换为实体类)
public class UserInfo { public string name; public int age; public address addr; } public class address { public string city; public string province; }
1、将json字符串转换为实体对象的代码如下:
string jsonData="{"name":"lily","age":23,"addr":{"city":guangzhou,"province":guangdong}}"; UserInfo user=(UserInfo)JsonConvert.DeserializeObject(jsonData, typeof(UserInfo));
2、读取json中某个属性的值可以使用一下代码:
JObject jsonObj = JObject.Parse(jsonData); string name=jsonObj ["name"].ToString(); string age=jsonObj ["age"].ToString(); string city=((JObject )jsonObj ["addr"])["city"].ToString(); string province=((JObject )jsonObj ["addr"])["province"].ToString();
3、解释多层嵌套json,获取任意属性的值:
如果需要处理的json字符串如下:
{"name":"lily","age":23,"addr":{"city":guangzhou,"province":guangdong}};
然后让你输入一个对象,如“city”,系统就会输出“guangzhou”,输入“age”,就输出“23”。由于json是多级嵌套的,所以需要逐个遍历,代码如下:
public string GetJsonValue(JEnumerable<JToken> jToken, string key) { IEnumerator enumerator = jToken.GetEnumerator(); while (enumerator.MoveNext()) { JToken jc = (JToken)enumerator.Current; if (jc is JObject || ((JProperty)jc).Value is JObject) { return GetJsonValue(jc.Children(), key); } else { if (((JProperty)jc).Name == key) { return ((JProperty)jc).Value.ToString(); } } } return null; }
调用GetJsonValue的代码:
string jsonData = "{"name":"lily","age":23,"addr":{"city":"guangzhou","province":"guangdong"}}"; JObject jsonObj = JObject.Parse(jsonData); Response.Write(GetJsonValue(jsonObj.Children(), "province"));
如果是多层嵌套的数组,也可以使用以下代码:
string jsonData = "{"addr":[{"city":"guangzhou","province":"guangdong"},{"city":"guiyang","province":"guizhou"}]}"; JObject jsonObj = JObject.Parse(jsonData); JArray jar = JArray.Parse(jsonObj["addr"].ToString()); JObject j = JObject.Parse(jar[0].ToString()); Response.Write(j["city"]);
4、JSON转XML:
复制代码 代码如下:
string xmlstr=((XmlDocument)JsonConvert.DeserializeXmlNode(jsonData)).InnerXml.ToString();
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持61阅读。
三 : php利用嵌套数组拼接与解析json的方法
利用嵌套数组 拼接混合json -包含对象数组
<?php // 自 PHP 5.4 起 $array = [ "status" => "0", "message" => "ok", "arr"=> [] ]; class Person { public $name; public $age; //定义一个构造方法初始化赋值 public function __construct($name,$age) { $this->name=$name; $this->age=$age; } } for($i=0;$i<10;$i++) { $p=new Person("ren",$i); $array["arr"][]=$p; } //var_dump($array); echo json_encode($array); ?>
php利用嵌套数组 解析混合json 包含对象数组
<?php function json_to_array($web) { $arr=array(); foreach($web as $k=>$v) { if(is_object($v)) $arr[$k]=json_to_array($v); //判断类型是不是object else $arr[$k]=$v; } return $arr; } $s='{"webname":"homehf","url":"www.homehf.com","qq":"744348666"}'; //将字符转成JSON $web=json_decode($s); $arr=array(); foreach($web as $k=>$v) $arr[$k]=$v; echo "<pre>"; print_r($arr); echo "</pre>"; $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}'; $web=json_decode($s); $arr=json_to_array($web); echo "<pre>"; print_r($arr); echo "</pre>"; /************************************************************************ ************************************************************************/ $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}'; $web=json_decode($s); echo '网站名称:'.$web->webname.'<br />网址:'.$web->url.'<br />联系方式:QQ-'.$web->contact->qq.' MAIL:'.$web->contact->mail; echo '<br /><br />'; /************************************************************************ ************************************************************************/ $s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"nieweihf@163.com","xx":"xxxxxxx"}}'; $web=json_decode($s); echo json_encode($web); $mys='{"status":"0","message":"ok","arr":[{"name":"ren","age":0},{"name":"ren","age":1},{"name":"ren","age":2}, {"name":"ren","age":3},{"name":"ren","age":4},{"name":"ren","age":5},{"name":"ren","age":6},{"name":"ren","age":7}, {"name":"ren","age":8},{"name":"ren","age":9}]}'; $myweb=json_decode($mys); echo $myweb->status; for($i=0;$i<10;$i++) { echo $myweb->arr[$i]->age; echo '<br /><br />'; } ?>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持61阅读。
四 : excel中怎么使用index嵌套match函数?
excel中index嵌套match函数用法详细步骤实例,index函数的作用是在第一个参数(指定的区域引用),根据相对行号(第二个参数),相对列号(第三个参数),返回行列所确定的单元格内的值。match函数的工作原理是在第二个参数(一个一维区域)中查找第一个参数(数字、文本或逻辑值或对数字、文本或逻辑值的单元格引用),返回查找到的值在第二个参数中的位置。
1、如图所示大红框是身高区间对应的尺码,我在单元格中输入了index函数
2、第一个参数就是身高区间对用的尺码区域,在输入函数的时候用鼠标选中区域引用,然后按f4在区域引用的行标和列标之前加入美元符号,这样改区域就被锁定,无论公式复制到哪里,引用区域不发生变化。
3、下图是match函数的工作原理,在第二个参数(一个一维区域)中查找第一个参数(数字、文本或逻辑值或对数字、文本或逻辑值的单元格引用),返回查找到的值在第二个参数中的位置。
4、下图演示的是选中match函数全部内容按f9,计算选中公式或函数运算结果,看是不是按照match函数工作原理确定的3.
5、下图显示的是index函数的工作原理。
6、拖动小红框所示的填充柄向下复制公式,这样就可以自动计算出身高所对应的尺码了。
相关推荐:
Excel中的INDEX和MATCH函数语法的使用教程
excel中INDEX函数怎么用?INDEX函数查询单元格的教程
五 : excel中用函数嵌套提取单元格中中文或英文方法介绍
要用到right、left、len、lenb函数,left和right函数需要记得第二个参数是要提取的字符数,另外需要记得一个汉字或者一个字母都是一个字符,但是汉字占据两个字节 字母占据一个字节 len函数返回的是字符数 lenb返回的是字节数
混合了汉字和字母的单元格中包含的汉字字符数 用单元格内容所占用字节数减去包含字符数即可
要提取混了了汉字和字母的单元格字母字符数 可以用双倍的字符数(也就是占用汉字字节数加上一倍字母占据字节)减去单元格实际占据的字节数 字母字节数 也就是字母字符数
理解这两点 就可以自由提取汉字和字母了
方法/步骤
一列包含由中文、英文组成的单元格
要实现的目标是将中文、英文分别提取到单独的单元格中
选中b1单元格 点击公式审核工具栏的公式求值 如果没有公式审核工具栏 可以在菜单栏 视图中将其勾选后就可以查看了
点按求值之后 返回a1的单元格引用 九阳abc
将返回字节数 返回值应该是7 lenb函数的返回值是引用单元格内包含的字节数
点按求值可以看到 lenb函数返回值确实是7 这一步的len函数将返回单元格内包含的字符数 它的结果应该是5 需要注意的是汉字很字母都是一个字符 但是汉字占用两个字节 字母占用一个字节
这一步的结果是2 从字符串左侧提取两个字符 返回值就是九阳 right函数的作用是从单元格内左侧第一个字符向右侧开始算起 提取若干字符 提取数看第二个参数
2乘以len函数是将返回两倍的字符数,两倍的字符数就是汉字占用的字节数加上两倍的字母占用字节数,lenb的返回值是是一共占用的字节数,两个的差就是字母占用的字节数也就是字母字符数
right函数的作用是从单元格右侧第一个字符计数 向左统计若干字符 将其作为返回值 统计多少字符依据第二个参数
以上就是excel中用函数嵌套提取单元格中中文或英文方法介绍,希望能对大家有所帮助!
本文标题:if函数嵌套的使用方法-2010Excel逻辑函数:[1]if函数的嵌套使用61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1