zoukankan
html css js c++ java
竖表转横表(支持多列)
在LoveCherry的blog中(
http://www.cnblogs.com/lovecherry/archive/2005/04/28/146749.html
)有一个竖表转横表的方法,但是只能支持只有一列的DataTable, 我改进了一下 可以支持多列.
public
DataTable MakeData(DataTable dt,
int
iSize,
int
[] iColumnID)
//
isize:每列行数 iColumnID 需要横向排列的列的序号数组
{
int
ColumnCount
=
iColumnID.Length;
int
itmp
=
dt.Rows.Count
%
iSize;
int
iColumn;
//
列数
if
(itmp
==
0
)
iColumn
=
dt.Rows.Count
/
iSize;
else
iColumn
=
dt.Rows.Count
/
iSize
+
1
;
DataTable newdt
=
new
DataTable();
for
(
int
i
=
0
;i
<
iColumn;i
++
)
{
for
(
int
j
=
0
;j
<
ColumnCount;j
++
)
{
string
aa
=
dt.Columns[iColumnID[j]].ColumnName
+
i;
DataColumn dc
=
new
DataColumn(dt.Columns[iColumnID[j]].ColumnName
+
i,dt.Columns[iColumnID[j]].DataType);
newdt.Columns.Add(dc);
}
}
for
(
int
i
=
0
;i
<
iSize;i
++
)
{
DataRow dr
=
newdt.NewRow();
for
(
int
j
=
0
;j
<
iColumn;j
++
)
{
for
(
int
k
=
0
;k
<
ColumnCount;k
++
)
{
if
((i
+
j
*
iSize)
<
dt.Rows.Count)
{
string
aa
=
dt.Columns[iColumnID[k]].ColumnName
+
j;
dr[dt.Columns[iColumnID[k]].ColumnName
+
j]
=
dt.Rows[i
+
j
*
iSize][iColumnID[k]];
}
}
}
newdt.Rows.Add(dr);
}
return
newdt;
}
查看全文
相关阅读:
pch文件的创建
常用的Xcode插件下载地址
内存管理
学习笔记-static的作用
IOS 之label的自适应
OC中的循环引用
理解事务的4种隔离级别
Solrcloud集群搭建
常见前端浏览器兼容问题及解决方案
Java内存溢出详解及配置
原文地址:https://www.cnblogs.com/phiree/p/280460.html
最新文章
angular的初步使用
angular 常用指令的使用
ios -工具-证书的制作pem的合成
ios-学习点-日历工具类
ios-小知识点-自定义uislider
ios-绘制-小知识点(裁减)
Linux下Nginx + Keepalived搭建负载均衡与高可用服务
Java线程池
Linux安装Redis
Linux安装Nginx
热门文章
Linux安装Mysql
MySql主从双向复制配置
Linux在线安装Redis
Docker部署web项目-jar包
Docker部署web项目-war包
Docker基础
xxxx
Xcode7.2运行不流畅的处理
iOS开发之ld7:duplicate symbols for architecture x86_64错误
AES加密解密
Copyright © 2011-2022 走看看