Maison  >  Article  >  développement back-end  >  Comment exporter DataTable au format HTML en C#

Comment exporter DataTable au format HTML en C#

高洛峰
高洛峰original
2017-01-18 09:48:201734parcourir

Avant-propos

Lors de l'exportation de données de DataTable en C#, nous avons besoin de données de sortie au format HTML. À l'heure actuelle, nous devons utiliser la méthode d'exportation de DataTable au format HTML. ceci.

Tout d’abord, nous devons lier DataTable et DataGridView.

1. Liez DataGridView via DataTable

1 Créez DataTable et ajoutez des colonnes

DataTable table = new DataTable();
table.Columns.Add("ID", typeof(int));
table.Columns.Add("NAME", typeof(string));
table.Columns.Add("CITY", typeof(string));

2.

table.Rows.Add(111, "Devesh", "Ghaziabad");
table.Rows.Add(222, "ROLI", "KANPUR");
table.Rows.Add(102, "ROLI", "MAINPURI");
table.Rows.Add(212, "DEVESH", "KANPUR");

3. Lier DataGridView

dataGridView1.DataSource=table;

4. Exécuter les résultats

2.

J'ai écrit un ensemble de codes pour créer du texte HTML pour chaque DataTable. Vous pouvez le référencer directement dans votre projet.

Le code est le suivant :

protected string ExportDatatableToHtml(DataTable dt)
{
StringBuilder strHTMLBuilder = new StringBuilder();
strHTMLBuilder.Append("<html >");
strHTMLBuilder.Append("<head>");
strHTMLBuilder.Append("</head>");
strHTMLBuilder.Append("<body>");
strHTMLBuilder.Append("<table border=&#39;1px&#39; cellpadding=&#39;1&#39; cellspacing=&#39;1&#39; bgcolor=&#39;lightyellow&#39; style=&#39;font-family:Garamond; font-size:smaller&#39;>");
  
strHTMLBuilder.Append("<tr >");
foreach (DataColumn myColumn in dt.Columns)
{
strHTMLBuilder.Append("<td >");
strHTMLBuilder.Append(myColumn.ColumnName);
strHTMLBuilder.Append("</td>");
  
}
strHTMLBuilder.Append("</tr>");
  
  
foreach (DataRow myRow in dt.Rows)
{
  
strHTMLBuilder.Append("<tr >");
foreach (DataColumn myColumn in dt.Columns)
{
strHTMLBuilder.Append("<td >");
strHTMLBuilder.Append(myRow[myColumn.ColumnName].ToString());
strHTMLBuilder.Append("</td>");
  
}
strHTMLBuilder.Append("</tr>");
}
  
//Close tags.
strHTMLBuilder.Append("</table>");
strHTMLBuilder.Append("</body>");
strHTMLBuilder.Append("</html>");
  
string Htmltext = strHTMLBuilder.ToString();
  
return Htmltext;
  
}

Compréhension du code

Nous avons créé une fonction en utilisant DataTable comme paramètre .


Utilisez ensuite la classe stringbuilder pour créer du texte HTML dynamique.


Le résultat de sortie est le même que le nombre de lignes et de colonnes dans DataGridView.


Créez des colonnes en HTML.

foreach (DataColumn myColumn in dt.Columns)
{
strHTMLBuilder.Append("<td >");
strHTMLBuilder.Append(myColumn.ColumnName);
strHTMLBuilder.Append("</td>");
  
}

Copiez les données, le code suivant créera le même nombre de lignes dans le DataTable et copiera les données dans les lignes HTML.

foreach (DataRow myRow in dt.Rows)
{
  
strHTMLBuilder.Append("<tr >");
foreach (DataColumn myColumn in dt.Columns)
{
strHTMLBuilder.Append("<td >");
strHTMLBuilder.Append(myRow[myColumn.ColumnName].ToString());
strHTMLBuilder.Append("</td>");
  
}
strHTMLBuilder.Append("</tr>");
}

4. Après avoir exécuté le code ci-dessus, vous obtiendrez le texte HTML suivant

<html >
<head>
</head>
<body>
<table border=&#39;1px&#39; cellpadding=&#39;1&#39; cellspacing=&#39;1&#39; bgcolor=&#39;lightyellow&#39; style=&#39;font-family:Garamond; font-size:smaller&#39;>
<tr >
<td >ID</td>
<td >NAME</td>
<td >CITY</td>
</tr><tr >
<td >111</td><td >Devesh</td>
<td >Ghaziabad</td></tr>
<tr ><td >222</td><td >ROLI</td>
<td >KANPUR</td></tr><tr >
<td >102</td><td >ROLI</td>
<td >MAINPURI</td></tr><tr >
<td >212</td><td >DEVESH</td>
<td >KANPUR</td></tr></table>
</body>
</html>

5. Créer un fichier HTML

string HtmlBody = ExportDatatableToHtml(table)
System.IO.File.WriteAllText(@"c:\abc.HTML", HtmlBody);

6. Résultats d'exécution

Comment exporter DataTable au format HTML en C#Résumé

Ce qui précède concerne l'exportation de DataTable au format HTML. format en C# J'espère que le contenu de cet article pourra être utile aux études ou au travail de chacun. Si vous avez des questions, vous pouvez laisser un message pour communiquer.

Pour plus d'articles sur la façon d'exporter DataTable en C# au format HTML, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn