关于DataTable的某些用法
2006-07-04 22:05
295 查看
/// <summary>
/// 从DataTable里面复制数据到DataGrid、DataList,第一个参数是DataTalbe变量名,第二个参数是要复制的行数
/// </summary>
/// <param name="p_dtIn"></param>
/// <param name="p_iRows"></param>
/// <returns></returns>
public static DataTable CopyRows(DataTable p_dtIn,int p_iRows)
{
DataTable dtOut;
dtOut = p_dtIn.Clone();
int iCount = p_dtIn.Rows.Count;
int iCopy;
if (iCount > p_iRows)
iCopy = p_iRows;
else
iCopy = iCount;
for(int i=0;i<iCopy;i++)
{
DataRow dr = p_dtIn.NewRow();
dr = p_dtIn.Rows[i];
DataRow drr = dtOut.NewRow();
drr.ItemArray = dr.ItemArray;
dtOut.Rows.Add(drr);
}
return dtOut;
}
/// <summary>
/// 在DataTable里面添加一个新列并填充数据。
/// </summary>
/// <param name="p_dtIn"></param>
/// <returns></returns>
public static DataTable AddIndex(DataTable p_dtIn)
{
DataColumn myColumn = new DataColumn();
myColumn.DataType = System.Type.GetType("System.Int16");
myColumn.AllowDBNull = false;
myColumn.Caption = "Idx";
myColumn.ColumnName = "Idx";
myColumn.DefaultValue = 0;
p_dtIn.Columns.Add(myColumn);
int iCount = p_dtIn.Rows.Count;
for(int i=0;i<iCount;i++)
{
p_dtIn.Rows[i]["Idx"] = i + 1;
}
return p_dtIn;
}
/// <summary>
/// 在DataTalbe里面添加一个新列并填充数据,并可以控制某一列数据的长度。
/// </summary>
/// <param name="p_dtIn"></param>
/// <param name="p_strColunmName"></param>
/// <param name="p_iLen"></param>
/// <param name="bIf"></param>
/// <returns></returns>
public static DataTable AddIdxAndSetColumnLen(DataTable p_dtIn,string p_strColunmName,int p_iLen,bool bIf)
{
DataColumn myColumn = new DataColumn();
myColumn.DataType = System.Type.GetType("System.Int16");
myColumn.AllowDBNull = false;
myColumn.Caption = "Idx";
myColumn.ColumnName = "Idx";
myColumn.DefaultValue = 0;
p_dtIn.Columns.Add(myColumn);
string strLoop;
int iLen = p_iLen;
string strLName;
for(int i=0;i< p_dtIn.Rows.Count;i++)
{
p_dtIn.Rows[i]["Idx"] = i + 1;
strLName = p_dtIn.Rows[i][p_strColunmName].ToString();
if(strLName.Length > iLen)
{
strLoop = strLName.Substring(0,iLen);
if(bIf != false)
strLoop += "...";
p_dtIn.Rows[i][p_strColunmName] = strLoop;
}
}
return p_dtIn;
}
/// <summary>
/// 在DATATABLE里面控制一列string数据的长度
/// </summary>
/// <param name="p_dtIn"></param>
/// <param name="p_strColunmName">要控制的列名</param>
/// <param name="p_iLen"></param>
/// <param name="bIf"></param>
/// <returns></returns>
public static DataTable SetColumnLen(DataTable p_dtIn,string p_strColunmName,int p_iLen,bool bIf)
{
string strLoop;
int iLen = p_iLen;
string strLName;
for(int i=0;i< p_dtIn.Rows.Count;i++)
{
strLName = p_dtIn.Rows[i][p_strColunmName].ToString();
if(strLName.Length > iLen)
{
strLoop = strLName.Substring(0,iLen);
if(bIf != false)
strLoop += "...";
p_dtIn.Rows[i][p_strColunmName] = strLoop;
}
}
return p_dtIn;
}
/// 从DataTable里面复制数据到DataGrid、DataList,第一个参数是DataTalbe变量名,第二个参数是要复制的行数
/// </summary>
/// <param name="p_dtIn"></param>
/// <param name="p_iRows"></param>
/// <returns></returns>
public static DataTable CopyRows(DataTable p_dtIn,int p_iRows)
{
DataTable dtOut;
dtOut = p_dtIn.Clone();
int iCount = p_dtIn.Rows.Count;
int iCopy;
if (iCount > p_iRows)
iCopy = p_iRows;
else
iCopy = iCount;
for(int i=0;i<iCopy;i++)
{
DataRow dr = p_dtIn.NewRow();
dr = p_dtIn.Rows[i];
DataRow drr = dtOut.NewRow();
drr.ItemArray = dr.ItemArray;
dtOut.Rows.Add(drr);
}
return dtOut;
}
/// <summary>
/// 在DataTable里面添加一个新列并填充数据。
/// </summary>
/// <param name="p_dtIn"></param>
/// <returns></returns>
public static DataTable AddIndex(DataTable p_dtIn)
{
DataColumn myColumn = new DataColumn();
myColumn.DataType = System.Type.GetType("System.Int16");
myColumn.AllowDBNull = false;
myColumn.Caption = "Idx";
myColumn.ColumnName = "Idx";
myColumn.DefaultValue = 0;
p_dtIn.Columns.Add(myColumn);
int iCount = p_dtIn.Rows.Count;
for(int i=0;i<iCount;i++)
{
p_dtIn.Rows[i]["Idx"] = i + 1;
}
return p_dtIn;
}
/// <summary>
/// 在DataTalbe里面添加一个新列并填充数据,并可以控制某一列数据的长度。
/// </summary>
/// <param name="p_dtIn"></param>
/// <param name="p_strColunmName"></param>
/// <param name="p_iLen"></param>
/// <param name="bIf"></param>
/// <returns></returns>
public static DataTable AddIdxAndSetColumnLen(DataTable p_dtIn,string p_strColunmName,int p_iLen,bool bIf)
{
DataColumn myColumn = new DataColumn();
myColumn.DataType = System.Type.GetType("System.Int16");
myColumn.AllowDBNull = false;
myColumn.Caption = "Idx";
myColumn.ColumnName = "Idx";
myColumn.DefaultValue = 0;
p_dtIn.Columns.Add(myColumn);
string strLoop;
int iLen = p_iLen;
string strLName;
for(int i=0;i< p_dtIn.Rows.Count;i++)
{
p_dtIn.Rows[i]["Idx"] = i + 1;
strLName = p_dtIn.Rows[i][p_strColunmName].ToString();
if(strLName.Length > iLen)
{
strLoop = strLName.Substring(0,iLen);
if(bIf != false)
strLoop += "...";
p_dtIn.Rows[i][p_strColunmName] = strLoop;
}
}
return p_dtIn;
}
/// <summary>
/// 在DATATABLE里面控制一列string数据的长度
/// </summary>
/// <param name="p_dtIn"></param>
/// <param name="p_strColunmName">要控制的列名</param>
/// <param name="p_iLen"></param>
/// <param name="bIf"></param>
/// <returns></returns>
public static DataTable SetColumnLen(DataTable p_dtIn,string p_strColunmName,int p_iLen,bool bIf)
{
string strLoop;
int iLen = p_iLen;
string strLName;
for(int i=0;i< p_dtIn.Rows.Count;i++)
{
strLName = p_dtIn.Rows[i][p_strColunmName].ToString();
if(strLName.Length > iLen)
{
strLoop = strLName.Substring(0,iLen);
if(bIf != false)
strLoop += "...";
p_dtIn.Rows[i][p_strColunmName] = strLoop;
}
}
return p_dtIn;
}
相关文章推荐
- C# 关于DataSet, DataTable, DataRow 和DataColumn的区别和用法
- 关于DataTable的一点意外用法
- c# 关于DataTable的用法
- 关于Datatable的一些用法
- 关于datatable对象的用法
- 关于DataTable用法的一些总结(有用)
- 关于datatable 的学习用法总结
- 关于dataTable的用法
- 关于gridview的一些用法,如获得gridview的选中行的数据,以及其他删除DataTable中的重复行。
- 关于DataSet、DataView、DataTable、DataRow、时间格式转换的一些用法
- 有关STL使用上的一些注意事项。关于某些函数的参数问题。
- 关于生成xml表格: HSSFWorkbook的用法
- 关于typedef的用法总结
- 关于DropDownList的几点用法
- 关于rs.isAfterLast和rs.next的用法
- 关于group by的用法 原理
- iphone关于self.用法的一些总结
- 关于<s:property>的用法
- python3.x 和 python2.x关于 urllib的用法
- 关于Cookie的用法