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;
}
查看全文
相关阅读:
centos7-关闭 rpcbind 服务
nginx进行获取阿里云slb真实ip配置操作
rsync同步时,删除目标目录比源目录多余文件的方法(--delete)
nfs安装
Selenium+PhantomJS使用时报错原因及解决方案
python json转对象 指定字段名称
大地坐标系和空间直角坐标系的转换
python日志输出的内容修改为json格式
Java String的intern方法
python 超时重试的方法 signal手段
原文地址:https://www.cnblogs.com/phiree/p/280518.html
最新文章
Linux安全加固手册(转)
nginx-404与fastcgi_intercept_errors指令
mysql查询表的创建时间
ansible如何用root用户运行普通用户授权
ansible-继续普通用户权限运行
linux上文件内容去重的问题uniq/awk 正则表达过滤操作
Linux curl 命令模拟 POST/GET 请求
linux,进行批量下载文件操作
Go: Println 与 Printf 的区别
DenyHosts 安全限制ssh防暴力破解
热门文章
shell脚本进行设置启动/关闭
shell编写启动脚本
代理端口转发工具rinetd
代码线管理流程图
mongodb安装
LINUX 安装NODEJS环境以及路径配置
nginx获取头部信息带下划线,获取不到解决方案
centos7 nodejs二进制安装
docker安装cboard
docker提示没有开启转发解决方法
Copyright © 2011-2022 走看看