using System;  using System.Data;  namespace ArrayToDataTable  {  class ArrayToDataTable  {  /// <summary>  /// 把一个一维数组转换为DataTable  /// </summary>  /// <param name="ColumnName">列名</param>  /// <param name="Array">一维数组</param>  /// <returns>返回DataTable</returns>  /// <remarks>柳永法 http://www.yongfa365.com/ </remarks>  public static DataTable Convert(string ColumnName, string[] Array)  {  DataTable dt = new DataTable();  dt.Columns.Add(ColumnName, typeof(string));  for (int i = 0; i < Array.Length; i++)  {  DataRow dr = dt.NewRow();  dr[ColumnName] = Array[i].ToString();  dt.Rows.Add(dr);  }  return dt;  }  /// <summary>  /// 反一个M行N列的二维数组转换为DataTable  /// </summary>  /// <param name="ColumnNames">一维数组,代表列名,不能有重复值</param>  /// <param name="Arrays">M行N列的二维数组</param>  /// <returns>返回DataTable</returns>  /// <remarks>柳永法 http://www.yongfa365.com/ </remarks>  public static DataTable Convert(string[] ColumnNames, string[,] Arrays)  {  DataTable dt = new DataTable();  foreach (string ColumnName in ColumnNames)  {  dt.Columns.Add(ColumnName, typeof(string));  }  for (int i1 = 0; i1 < Arrays.GetLength(0); i1++)  {  DataRow dr = dt.NewRow();  for (int i = 0; i < ColumnNames.Length; i++)  {  dr[i] = Arrays[i1, i].ToString();  }  dt.Rows.Add(dr);  }  return dt;  }  /// <summary>  /// 反一个M行N列的二维数组转换为DataTable  /// </summary>  /// <param name="Arrays">M行N列的二维数组</param>  /// <returns>返回DataTable</returns>  /// <remarks>柳永法 http://www.yongfa365.com/ </remarks>  public static DataTable Convert(string[,] Arrays)  {  DataTable dt = new DataTable();  int a = Arrays.GetLength(0);  for (int i = 0; i < Arrays.GetLength(1); i++)  {  dt.Columns.Add("col" + i.ToString(), typeof(string));  }  for (int i1 = 0; i1 < Arrays.GetLength(0); i1++)  {  DataRow dr = dt.NewRow();  for (int i = 0; i < Arrays.GetLength(1); i++)  {  dr[i] = Arrays[i1, i].ToString();  }  dt.Rows.Add(dr);  }  return dt;  }  }  }  示例代码:
view plaincopy to clipboardprint?using System;  using System.Collections.Generic;  using System.ComponentModel;  using System.Data;  using System.Drawing;  using System.Text;  using System.Windows.Forms;  namespace ArrayToDataTable  {  public partial class Form1 : Form  {  public Form1()  {  InitializeComponent();  }  private void button1_Click(object sender, EventArgs e)  {  dataGridView1.DataSource = ArrayToDataTable.Convert("haha", new string[] { "1", "2", "3", "4", "5", "6" });  }  private void button2_Click(object sender, EventArgs e)  {  string[,] array3D = {   { "1", "数组转DataTable 1", "0"},   { "2", "数组转DataTable 2", "1"},   { "3", "数组转DataTable 3", "1"},   { "4", "数组转DataTable 4", "2"},   { "5", "数组转DataTable 5", "2"},   { "6", "数组转DataTable 6", "5"},   };  dataGridView1.DataSource = ArrayToDataTable.Convert(new string[] { "haha1", "haha2", "haha3" }, array3D);  }  private void button3_Click(object sender, EventArgs e)  {  string[,] array3D = {   { "1", "数组转DataTable 1", "0"},   { "2", "数组转DataTable 2", "1"},   { "3", "数组转DataTable 3", "1"},   { "4", "数组转DataTable 4", "2"},   { "5", "数组转DataTable 5", "2"},   { "6", "数组转DataTable 6", "5"},   };  dataGridView1.DataSource = ArrayToDataTable.Convert(array3D);  }  private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)  {  System.Diagnostics.Process.Start("Iexplore.exe", "http://www.yongfa365.com/");  }  }  }  

转载于:https://www.cnblogs.com/Holmes-Jin/archive/2012/04/25/2470671.html

C# 数组转换为DataTable 的三个方法相关推荐

  1. php 带建数组转字符串,php数组转换为字符串的两种方法详解【附视频】

    本篇文章主要给大家介绍PHP数组转换为字符串的两种方法.(文章末尾附有对应的视频教程) 第一种方法:使用PHP本身的函数implode来直接将数组转换为字符串. 第二种方法:使用循环遍历数组元素拼接成 ...

  2. 求数组中间值的三种方法

    目录 1. 使用右移运算符 (>>) 来计算数组中间值 方法一: Mid = (L+R) / 2 (存在局限性) 方法二:Mid = L + (R-L) / 2 方法三:  Mid = L ...

  3. 如何将PDF转换为PPT?三种方法让你操作无忧!

    在我们日常工作中,使用PPT演示工作内容是常见的需求.熟练制作各种类型的PPT是每个专业人士必备的技能.但有时会遇到PDF格式的文件需要转换为PPT才能使用.这两种文件格式在日常工作中广泛使用,每个人 ...

  4. 【原】动态申请二维数组并释放的三种方法

    在C++中实现变长数组 一般来说,有三种方法来申请多维数组:C的malloc/Free    C++的new/delete    STL容器Vector 1.变长一维数组 这里说的变长数组是指在编译时 ...

  5. 数组传参的三种方法:泛型;压扁数组;数组结构

    数组传参很常见,在 C/C++ 中传递数组时,数组名会退化为指针,所以一般都要给出首地址和长度.这是有缺陷的,当我们在写函数时不知道各维大小时该怎么办呢? 下面用矩阵乘法作为例子,给出三种实现方法:G ...

  6. PDF怎么转换成Word?将PDF转换为Word的三种方法!

    在我们需要将PDF文件转换为Word文件时,有几种方法可以选择.通常,我们在文件传输过程中使用的文件格式是PDF,但如果我们需要对文件进行编辑,就需要将其转换为可编辑的Word格式.下面是几种转换方法 ...

  7. java arrayadapter_「arrayadapter」Android之ArrayAdapter(数组适配器)的三种方法 - seo实验室...

    arrayadapter arrayadapter数组适配器用于绑定格式单一的数据,数据源可以是集合或者数组 列表视图(listview)以垂直的形式列出需要显示的列表项. 实现过程:新建适配器-&g ...

  8. XD文件转换为sketch的三种方法

    XD文件如何转化为Sketch文件,作为竞品的两个产品,如果要互通到可以彼此转换为彼此的文件格式,还是有点难的. 所以,今天我总结了 3 个方法,其中最后一个方法是最好用的! XD 和 Sketch ...

  9. Android(14) ArrayAdapter(数组适配器)的三种方法

    ArrayAdapter数组适配器用于绑定格式单一的数据,数据源可以是集合或者数组 列表视图(ListView)以垂直的形式列出需要显示的列表项. 实现过程:新建适配器->添加数据源到适配器-& ...

最新文章

  1. SVG.js 笔记 (一)
  2. Springboot中给图片添加文字水印
  3. 腾讯AI战略详解:技术社会与创新图景 | 2017互联网科技创新白皮书重磅首发
  4. 陶哲轩实分析习题17.1.2
  5. pythonbreak语句教程_Python break语句详解
  6. centos 设置双网卡,双网关
  7. VTK:可视化之CubeAxesActor2D
  8. python3-pandas 数据结构 Series、DataFrame 基础
  9. 信息学奥赛一本通(2066:【例2.3】买图书)
  10. 【今日CV 计算机视觉论文速览】Thu, 28 Mar 2019
  11. Itsdangerous应用
  12. Beagle 0.2.16(附 Ubuntu Edgy 安顿源)
  13. 语音识别如何识别中英混杂的语句?或者别的不同语言混合的语句?
  14. sqlplus必须要安装oracle吗,不安装oracle客户端使用sqlplus
  15. oracle 常用系统表
  16. gd32f303 设计中断优先级_浅谈飞控的软件设计
  17. 实战:tomcat版本升级
  18. 如何一键开通局域网共享
  19. 吉他即兴创作演奏训练教程
  20. Java类型转换简单运用

热门文章

  1. python 招聘 少_Python招聘需求猛增123%!学完Python工资多少?
  2. 贝叶斯集锦:贝叶斯派和频率派的一个例子
  3. linux 内核之美,Linux内核 | 系统调用
  4. 系统学习深度学习(八)--损失函数
  5. Android NDK开发之 NEON 矩阵转置,矩阵乘法实现
  6. 数据结构c语言版堆排序,【数据结构】堆排序(C++实现)
  7. Windows10下VB6.0开发——ini文件存储参数信息
  8. Windows核心编程_修改U盘图标
  9. C++中用stringstream类进行数据类型的转换
  10. java虚拟机之垃圾回收器