标签归档:c#

c#代码中如何清空stringbuilder中的数据?


摘要:
下文讲述c#中对stringBuilder对象清空数据的三种方法分享,如下所示:


出现原因:
由于stringBuilder.Append方法比string+=方法更高效,所有我们常常在字符串中使用stringBuilder对象,但是stringBuilder的短板在于,没有clear和empty清空方法,
下文讲述stringBuilder对象的三种变相清空方法,如下所示:


方法1:使用remove方法,移除stringBuilder中内容

StringBuilder maomao = new StringBuilder();
maomao.Append("内容");
maomao.Remove(0,maomao.Length);//移除stringBuilder中的内容


方法2:使用Replace方法,替换stringBuilder中的内容

StringBuilder maomao = new StringBuilder();
maomao.Append("内容");
maomao.Replace(maomao.ToString(), "");//用空字符替换内容的全部信息


方法3:通过设置Length属性,达到缩减stringBuilder中的内容

 StringBuilder maomao = new StringBuilder();
maomao.Append("内容");
maomao.Length = 0;//设置长度为0,清空内容

c#将DataTable中指定列转换成数组或List的方法分享


摘要:
日常c#开发中,我们常常需要将datatable中指定列转换为数组或list,下文将举例分享具体的实现方法,如下所示:

   --例:将DataTable dtTest中的info列转换为数组和List的方法
  
   string[]       arrInfo =  dtTest.AsEnumerable().Select(d => d.Field("info")).ToArray();
 
   List listInfo =  dtTest.AsEnumerable().Select(d => d.Field("info")).ToList();

c# asp.net 下载excel到本地的方法分享


摘要:
下面的代码可实现下载excel文件至客户端任意位置,如下:
实验环境:iis

例:
下载服务器端tmp目录下的指定excel文件至客户端

   try
{
    string strServerPath  = Server.MapPath("~") + "/tmp/20190823001.xlsx";//待下载服务器文件路径
    FileInfo  f= new FileInfo(strServerPath);
    Response.Clear();
    Response.Charset = "GB2312";
    Response.ContentEncoding = System.Text.Encoding.UTF8;
    Response.AddHeader("Content-Disposition", "attachment;filename=" + Server.UrlEncode(f.Name));
    Response.AddHeader("Content-Length", f.Length.ToString());
    Response.ContentType = "application/x-bittorrent";
    Response.WriteFile(f.FullName);
    Response.End();
}
catch (Exception ex)
{
    //异常处理
}