生成Csv格式的字符串
Posted tangchun
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生成Csv格式的字符串相关的知识,希望对你有一定的参考价值。
using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace Comon { public class CsvUtil { /// <summary> /// 生成Csv格式的字符串 /// </summary> /// <typeparam name="T">数据源类型</typeparam> /// <param name="sourceDate">数据源</param> /// <param name="generateFilelds">需要生成到Csv格式字符串的字段列表</param> /// <returns></returns> public static string GenerateCsvFormate<T>(IList<T> sourceDate, IList<string> generateFilelds) where T : class, new() { if (sourceDate == null) { throw new ArgumentNullException(nameof(sourceDate)); } Type type = typeof(T); PropertyInfo[] propertyInfos = type.GetProperties(); IList<string> fieldValueList = new List<string>(generateFilelds.Count); StringBuilder builder = new StringBuilder(); builder.Append("?(""); foreach (var item in sourceDate) { builder.Append(" "); fieldValueList.Clear(); foreach (var field in generateFilelds) { PropertyInfo property = propertyInfos.FirstOrDefault(c => c.Name == field); if (property != null) { var fieldValue = property.GetValue(item).ToString(); fieldValueList.Add(fieldValue); } } builder.Append(string.Join(",", fieldValueList)); } builder.Append(" ")"); return builder.ToString(); } } }
以上是关于生成Csv格式的字符串的主要内容,如果未能解决你的问题,请参考以下文章