动态生成表格

本文介绍了一个使用C#编写的简单程序,该程序能够动态生成带有指定行数和列数的HTML表格。通过调整记录数量和列的数量,可以创建不同大小的表格。

发表时间:2006-6-20 16:16:00

using System;
using System.Text;
using System.IO;
using System.Windows.Forms;

public class DynmicTable
{
/// <summary>
/// 动态生成表格
/// </summary>
public static void Main()
{
  StringBuilder builder = new StringBuilder();
  builder.Append("<script>\n");
  builder.Append("document.write('<TABLE style=\"border:1px solid #e4e4e4\" width=\"100%\" cellpadding=\"2\" cellspacing=\"1\" border=\"0\">');\n");
  int recordCount = 80;
  int columns = 6;
  for ( int i=1; i<=recordCount; i++ )
  {
   if( i % columns == 1 )
   {
    builder.Append("document.write('<TR>');\n");
    if(i==recordCount)
    {
     builder.Append("document.write('<TD colspan=" + ( ( columns + 1 ) - ( recordCount % columns )).ToString()+" align=\"center\" style=\"border:1px solid #e4e4e4\">ABCD</TD>');\n");
     builder.Append("document.write('</TR>');\n");
    }
    else
     builder.Append("document.write('<TD align=\"center\" style=\"border:1px solid #e4e4e4\">ABCD</TD>');\n");
   }
   else if( ( i % columns > 1 ) && ( i % columns ) < columns )
   {
    if( i == recordCount )
    {
     builder.Append("document.write('<TD colspan=" + ( ( columns + 1 ) - ( recordCount % columns ) ).ToString()+" align=\"center\" style=\"border:1px solid #e4e4e4\">ABCD</TD>');\n");
     builder.Append("document.write('</TR>');\n");
    }
    else
     builder.Append("document.write('<TD align=\"center\" style=\"border:1px solid #e4e4e4\">ABCD</TD>');\n");
   }
   else if( i % columns == 0 )
   {
    builder.Append("document.write('<TD align=\"center\" style=\"border:1px solid #e4e4e4\">ABCD</TD>');\n");
    builder.Append("document.write('</TR>');\n");
   }
  }

  builder.Append("document.write('</TABLE>');\n");
  builder.Append("</script>\n\n");

  string path = Application.StartupPath+"/dynamictable.htm";
  using (StreamWriter streamWriter = new StreamWriter(path,false,Encoding.GetEncoding("gb2312")))
        {
            streamWriter.Write(builder.ToString());
   streamWriter.Flush();
        }
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值