国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#文件操作類分享

2020-01-24 00:36:13
字體:
來源:轉載
供稿:網友

本文實例為大家分享了C#文件操作類的具體代碼,供大家參考,具體內容如下

using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Reflection;using System.Collections;using System.Data.Common;namespace DotNet.Utilities{ //JSON轉換類 public class ConvertJson { #region 私有方法 /// <summary> /// 過濾特殊字符 /// </summary> private static string String2Json(String s) {  StringBuilder sb = new StringBuilder();  for (int i = 0; i < s.Length; i++)  {  char c = s.ToCharArray()[i];  switch (c)  {   case '/"':   sb.Append("http:///""); break;   case '//':   sb.Append("http:////"); break;   case '/':   sb.Append("http:///"); break;   case '/b':   sb.Append("http://b"); break;   case '/f':   sb.Append("http://f"); break;   case '/n':   sb.Append("http://n"); break;   case '/r':   sb.Append("http://r"); break;   case '/t':   sb.Append("http://t"); break;   default:   sb.Append(c); break;  }  }  return sb.ToString(); } /// <summary> /// 格式化字符型、日期型、布爾型 /// </summary> private static string StringFormat(string str, Type type) {  if (type == typeof(string))  {  str = String2Json(str);  str = "/"" + str + "/"";  }  else if (type == typeof(DateTime))  {  str = "/"" + str + "/"";  }  else if (type == typeof(bool))  {  str = str.ToLower();  }  else if (type != typeof(string) && string.IsNullOrEmpty(str))  {  str = "/"" + str + "/"";  }  return str; } #endregion #region List轉換成Json /// <summary> /// List轉換成Json /// </summary> public static string ListToJson<T>(IList<T> list) {  object obj = list[0];  return ListToJson<T>(list, obj.GetType().Name); } /// <summary> /// List轉換成Json  /// </summary> public static string ListToJson<T>(IList<T> list, string jsonName) {  StringBuilder Json = new StringBuilder();  if (string.IsNullOrEmpty(jsonName)) jsonName = list[0].GetType().Name;  Json.Append("{/"" + jsonName + "/":[");  if (list.Count > 0)  {  for (int i = 0; i < list.Count; i++)  {   T obj = Activator.CreateInstance<T>();   PropertyInfo[] pi = obj.GetType().GetProperties();   Json.Append("{");   for (int j = 0; j < pi.Length; j++)   {   Type type = pi[j].GetValue(list[i], null).GetType();   Json.Append("/"" + pi[j].Name.ToString() + "/":" + StringFormat(pi[j].GetValue(list[i], null).ToString(), type));   if (j < pi.Length - 1)   {    Json.Append(",");   }   }   Json.Append("}");   if (i < list.Count - 1)   {   Json.Append(",");   }  }  }  Json.Append("]}");  return Json.ToString(); } #endregion #region 對象轉換為Json /// <summary>  /// 對象轉換為Json  /// </summary>  /// <param name="jsonObject">對象</param>  /// <returns>Json字符串</returns>  public static string ToJson(object jsonObject) {  string jsonString = "{";  PropertyInfo[] propertyInfo = jsonObject.GetType().GetProperties();  for (int i = 0; i < propertyInfo.Length; i++)  {  object objectValue = propertyInfo[i].GetGetMethod().Invoke(jsonObject, null);  string value = string.Empty;  if (objectValue is DateTime || objectValue is Guid || objectValue is TimeSpan)  {   value = "'" + objectValue.ToString() + "'";  }  else if (objectValue is string)  {   value = "'" + ToJson(objectValue.ToString()) + "'";  }  else if (objectValue is IEnumerable)  {   value = ToJson((IEnumerable)objectValue);  }  else  {   value = ToJson(objectValue.ToString());  }  jsonString += "/"" + ToJson(propertyInfo[i].Name) + "/":" + value + ",";  }  jsonString.Remove(jsonString.Length - 1, jsonString.Length);  return jsonString + "}"; } #endregion #region 對象集合轉換Json /// <summary>  /// 對象集合轉換Json  /// </summary>  /// <param name="array">集合對象</param>  /// <returns>Json字符串</returns>  public static string ToJson(IEnumerable array) {  string jsonString = "[";  foreach (object item in array)  {  jsonString += ToJson(item) + ",";  }  jsonString.Remove(jsonString.Length - 1, jsonString.Length);  return jsonString + "]"; } #endregion #region 普通集合轉換Json /// <summary>  /// 普通集合轉換Json  /// </summary>  /// <param name="array">集合對象</param>  /// <returns>Json字符串</returns>  public static string ToArrayString(IEnumerable array) {  string jsonString = "[";  foreach (object item in array)  {  jsonString = ToJson(item.ToString()) + ",";  }  jsonString.Remove(jsonString.Length - 1, jsonString.Length);  return jsonString + "]"; } #endregion #region DataSet轉換為Json /// <summary>  /// DataSet轉換為Json  /// </summary>  /// <param name="dataSet">DataSet對象</param>  /// <returns>Json字符串</returns>  public static string ToJson(DataSet dataSet) {  string jsonString = "{";  foreach (DataTable table in dataSet.Tables)  {  jsonString += "/"" + table.TableName + "/":" + ToJson(table) + ",";  }  jsonString = jsonString.TrimEnd(',');  return jsonString + "}"; } #endregion #region Datatable轉換為Json /// <summary>  /// Datatable轉換為Json  /// </summary>  /// <param name="table">Datatable對象</param>  /// <returns>Json字符串</returns>  public static string ToJson(DataTable dt) {  StringBuilder jsonString = new StringBuilder();  jsonString.Append("[");  DataRowCollection drc = dt.Rows;  for (int i = 0; i < drc.Count; i++)  {  jsonString.Append("{");  for (int j = 0; j < dt.Columns.Count; j++)  {   string strKey = dt.Columns[j].ColumnName;   string strValue = drc[i][j].ToString();   Type type = dt.Columns[j].DataType;   jsonString.Append("/"" + strKey + "/":");   strValue = StringFormat(strValue, type);   if (j < dt.Columns.Count - 1)   {   jsonString.Append(strValue + ",");   }   else   {   jsonString.Append(strValue);   }  }  jsonString.Append("},");  }  jsonString.Remove(jsonString.Length - 1, 1);  jsonString.Append("]");  return jsonString.ToString(); } /// <summary> /// DataTable轉換為Json  /// </summary> public static string ToJson(DataTable dt, string jsonName) {  StringBuilder Json = new StringBuilder();  if (string.IsNullOrEmpty(jsonName)) jsonName = dt.TableName;  Json.Append("{/"" + jsonName + "/":[");  if (dt.Rows.Count > 0)  {  for (int i = 0; i < dt.Rows.Count; i++)  {   Json.Append("{");   for (int j = 0; j < dt.Columns.Count; j++)   {   Type type = dt.Rows[i][j].GetType();   Json.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + StringFormat(dt.Rows[i][j].ToString(), type));   if (j < dt.Columns.Count - 1)   {    Json.Append(",");   }   }   Json.Append("}");   if (i < dt.Rows.Count - 1)   {   Json.Append(",");   }  }  }  Json.Append("]}");  return Json.ToString(); } #endregion #region DataReader轉換為Json /// <summary>  /// DataReader轉換為Json  /// </summary>  /// <param name="dataReader">DataReader對象</param>  /// <returns>Json字符串</returns>  public static string ToJson(DbDataReader dataReader) {  StringBuilder jsonString = new StringBuilder();  jsonString.Append("[");  while (dataReader.Read())  {  jsonString.Append("{");  for (int i = 0; i < dataReader.FieldCount; i++)  {   Type type = dataReader.GetFieldType(i);   string strKey = dataReader.GetName(i);   string strValue = dataReader[i].ToString();   jsonString.Append("/"" + strKey + "/":");   strValue = StringFormat(strValue, type);   if (i < dataReader.FieldCount - 1)   {   jsonString.Append(strValue + ",");   }   else   {   jsonString.Append(strValue);   }  }  jsonString.Append("},");  }  dataReader.Close();  jsonString.Remove(jsonString.Length - 1, 1);  jsonString.Append("]");  return jsonString.ToString(); } #endregion }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潼南县| 伊川县| 福建省| 清流县| 邹平县| 百色市| 恩施市| 台湾省| 佛冈县| 庐江县| 富民县| 斗六市| 广饶县| 兴义市| 巴青县| 北海市| 共和县| 贵德县| 高密市| 交城县| 晋中市| 乌兰县| 松潘县| 汤阴县| 佳木斯市| 南和县| 资中县| 黎城县| 云梦县| 海晏县| 乐业县| 怀集县| 平远县| 天台县| 调兵山市| 泽普县| 萝北县| 安塞县| 河源市| 宁津县| 马龙县|