设为首页 加入收藏 网站搜索 繁體中文 中国建站网 — 站长资源分享平台

在.NET中,将竖表变横表(支持固定列)

来源:网络收集 作者:佚名 时间:2007-04-25 23:07:03

竖表变横表(支持固定列)

根据LoveCherry的竖变横方法改进而来
        public DataTable MakeData(DataTable dt,int iColumnSize,int[] iColumnID) //iColumnsize:重复列数 iColumnID 需要横向排列的列的序号数组
        {  
            int ColumnCount=iColumnID.Length;
            int totalRows=dt.Rows.Count;
            int itmp=dt.Rows.Count%iColumnSize; //行数
            int iRows; //行数
            if(itmp==0)
                iRows=dt.Rows.Count/iColumnSize;
            else
                iRows=dt.Rows.Count/iColumnSize+1;
            DataTable newdt=new DataTable();
            for(int i=0;i<iColumnSize;i++)
            { 
                for(int j=0;j<ColumnCount;j++)
                {  string aa=dt.Columns[iColumnID[j]].ColumnName+i;
                    int bb=iColumnID[j];
                    DataColumn dc=new DataColumn(dt.Columns[iColumnID[j]].ColumnName+i,dt.Columns[iColumnID[j]].DataType);
               
                    newdt.Columns.Add(dc);
                }
            }
            for(int i=0;i<iRows;i++)
            {        
                DataRow dr=newdt.NewRow();
                for(int j=0;j<iColumnSize;j++)
                {
                    for(int k=0;k<ColumnCount;k++)
                    {
                        if((i+j*iColumnSize)<dt.Rows.Count)
                        { 
                            string aa=dt.Columns[iColumnID[k]].ColumnName+j;
                            try
                            {
                                dr[dt.Columns[iColumnID[k]].ColumnName+j]=dt.Rows[iRows*j+i][iColumnID[k]];
                            }
                            catch
                            {}
                        }

[1] [2]  下一页

Tags:

  • 好的评价 如果您觉得好,就请您
      0%(0)
  • 差的评价 如果您觉得差,就请您
      0%(0)
  • 相关文章
    广告赞助

    文章随便看看 设计素材 建站学院 网页模板 视频教程

    网友评论

    共有 0 位网友发表了评论,得分 0 分,平均 0 分    查看完整评论

    用户名: 查看更多评论

    分 值:100分 85分 70分 55分 40分 25分 10分 1分

    内 容:

             通知管理员 验证码: