程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 在.NET中,將豎表變橫表(支持固定列)

在.NET中,將豎表變橫表(支持固定列)

編輯:.NET實例教程

豎表變橫表(支持固定列)

根據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++) 
                { 
 &n
bsp;                  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
                            {}
                        }
                    }
                } 
                newdt.Rows.Add(dr);                 
            } 
            return newdt; 
        }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved