<返主目录 ▕▏ C#基础库 WjwLibs: V5.0.5▕▏帮助文档 : 键值操作类 ▕▏ 编译日期: 2024-09-17▕▏ Email: wujwmail@163.com
##类-1.名称: WjwKvs ▕→ 字符串关联二维数组类 命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 字符串关联二维数组类 本库中的csvKV数据结构解释: csvKV字串是指由键值对项组成的CSV字串,本库中可用该结构来描述字典,对于偏平化结构描述比json,xml串更简单,用于字典的串行化通信和存储 如: str="key1:广州,key2:上海,key3:北京"; 或者写为: str="key1=广州,key2=上海,key3=北京"; 字段内部的双引号逗号同CSV规范 (csv串处理在WjwIo类中是本库自建高效的解析程序,并不依赖其它的包) 示例: var str = "key1=广州,key2=' 上海',"key3=北,京""; WjwPhp.print_r(WjwKvs.CsvToKV(str)); //或者: WjwPhp.print_r(new WjwKvs(str)); 定义: public class WjwKvs : Dictionary<string, string>
###方法名称: WjwKvs
▕→ WjwKvs构造器
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: WjwKvs构造器 参数: dictionary : 字典或csvKV字串 定义: public WjwKvs(IEnumerable dictionary = null)
###方法名称: IsSetKey
▕→ 测试一个键名是否定义
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 测试一个键名是否定义 参数: key : 键名 返回: 定义: public bool IsSetKey(string key)
###方法名称: To
▕→ 转为字典
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 转为字典 返回: 定义: public Dictionary<string, string> To()
###方法名称: From
▕→ 装入字典
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 装入字典 定义: public void From(Dictionary<string, string> dictionary)
###方法名称: Array_keys
▕→ 输出键列表
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 输出键列表 返回: 定义: public List<string> Array_keys()
###方法名称: Array_values
▕→ 输出值列表
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 输出值列表 返回: 定义: public List<string> Array_values()
###方法名称: Array_combine
▕→ 合并导入为WjwKvs
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 合并导入为WjwKvs 参数: arrk : 键列表 arrv : 值列表 定义: public void Array_combine(List<string> arrk, List<string> arrv)
###方法名称: ToE4x
▕→ 转为e4x
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 转为e4x 参数: rootStr : 根结点缺省root 返回: e4x 定义: public WjwE4x ToE4x(string rootStr="")
###方法名称: SetEmpty
▕→ 清空(="")实例每子项的的值
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 清空(="")实例每子项的的值 定义: public void SetEmpty()
###方法名称: Print
▕→ 打印数据结构
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 打印数据结构 定义: public string Print()
###方法名称: ToString
▕→ 串行化(KVToCsv)
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 串行化(KVToCsv) 返回: 定义: public override string ToString()
###方法名称: ToKV
▕→ 字串键值对处理:
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 字串键值对处理: 将k[:]v格式的字串转为字典(关联数组),其中分隔符为[:=] 参数: kvStr : 任意长度的kv格式参数,可在最后一个参数中指定分隔符 返回: 定义: public static Dictionary<string, string> ToKV(params string[] kvStr)
###方法名称: CsvToKV
▕→ csvKV字串(项分隔为逗号键值分割符[:=])转字典
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: csvKV字串(项分隔为逗号键值分割符[:=])转字典 参数: csvKvStr : CSV串:"k[:=]v,k[:=]v,k[:=]v,..." part : 分隔字符 返回: 字典 定义: public static Dictionary<string, string> CsvToKV(string csvKvStr,char part=',')
###方法名称: KVToCsv
▕→ 字典转csvKV字串(项分隔为逗号键值分割符[:=])
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 字典转csvKV字串(项分隔为逗号键值分割符[:=]) 参数: dt : 字典 返回: csvKV字串(项分隔为逗号键值分割符[:=]) 定义: public static string KVToCsv(Dictionary<string,string> dt)
###方法名称: JsonToKV
▕→ json(对象)字串转为字典
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: json(对象)字串转为字典 参数: json : json字串 返回: 字典 定义: public static Dictionary<string, string> JsonToKV( string json)
###方法名称: Sort
▕→ 字典排序(原值不变)
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 字典排序(原值不变) 例: WjwPhp.print("(含小数,百分号)值升序:"); var collection = WjwKvs.CsvToKV("k1=123.45%,k2=343.%,k3=8.88%,k4=881.8%,k5=88%"); WjwPhp.print_r(WjwKvs.Sort(collection,"nN")); 参数: kvs : 字典 mod : 排序方式(方式以字母大小写顺序来方便记忆): 缺省: 键升序 Kk: 键降序 Vv: 值降序 vV: 值升序 Nn: 正数字值(含小数,百分号)降序 nN: 正数字值(含小数,百分号)升序 返回: 定义: public static Dictionary<string, string> Sort(Dictionary<string, string> kvs, string mod = "")
###方法名称: Kv2Array2
▕→ 拆分一个字串以指定分隔符为二部分(键值)
命名空间: WjwLibs 所属类: WjwLibs.WjwKvs : Dictionary<string, string> 说明: 拆分一个字串以指定分隔符为二部分(键值) 参数: kv : 源字符串 span : 分隔符,缺省为:或= 返回: 数组长度为2的字符数组 定义: public static string[] Kv2Array2(string kv,string span=":=")