zoukankan      html  css  js  c++  java
  • 竖表变横表(支持固定列)

    根据LoveCherry的竖变横方法改进而来(http://www.cnblogs.com/lovecherry/archive/2005/04/23/143819.html)

            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
                                
    {}
                            }

                        }

                    }
     
                    newdt.Rows.Add(dr);                 
                }
     
                
    return newdt; 
            }
     
  • 相关阅读:
    Duilib 源码分析(二)消息处理
    Duilib 源码分析(一)示例推演
    2021 Duilib最新入门教程(七)Duilib处理消息
    2021 Duilib最新入门教程(六)Duilib界面设计
    2021 Duilib最新入门教程(五)Duilib调用静态库示例
    2021 Duilib最新入门教程(四)Duilib编译静态库
    源文件(cpp)、静态库(lib)、动态库(dll)
    2021 Duilib最新入门教程(三)Duilib调用动态库示例
    supernova-SN_TV MUF简介
    jieba+pyecharts 词云图应用
  • 原文地址:https://www.cnblogs.com/phiree/p/280518.html
Copyright © 2011-2022 走看看