我有列表(类)。有1800个计数和每个对象有90个属性。当我用90个房产开凿时间越来越多时,如何解决这个问题列表迭代需要很多时间?
Dim cellIntStyle As HSSFCellStyle = hssfworkbook.CreateCellStyle
cellIntStyle.DataFormat = HSSFDataFormat.GetBuiltinFormat("#")
Dim cellDateStyle As HSSFCellStyle = hssfworkbook.CreateCellStyle
cellDateStyle.DataFormat = HSSFDataFormat.GetBuiltinFormat(Format
("dd-MMM-yyyy"))
For Each mReport As Report In dtExcel
row = sheet1.CreateRow(iRow)
j = 0
For Each prop As PropertyInfo In props
Dim value As Object = prop.GetValue(mReport, Nothing)
If IsInt(value) Then
CreateRow(row, j, CType(value, Integer), cellIntStyle)
ElseIf IsDate(value) Then
CreateRow(row, j, String.Format("{0:dd-MMM-yyyy}",
value), cellDateStyle)
Else
CreateRow(row, j, value)
End If
j = j + 1
Next
iRow = iRow + 1 // Coming here taking so long... how to make it fast.
Next
Private Sub CreateRow(ByRef row As HSSFRow, ByVal colId As Integer,
ByVal value As String)
row.CreateCell(colId).SetCellValue(value)
End Sub
Private Sub CreateRow(ByRef row As HSSFRow, ByVal colId As Integer,
ByVal value As Integer,
ByVal cellStyle As HSSFCellStyle)
Dim cell As HSSFCell = row.CreateCell(colId)
cell.SetCellValue(value)
cell.CellStyle = cellStyle
End Sub
Private Sub CreateRow(ByRef row As HSSFRow, ByVal colId As Integer,
ByVal value As String,
ByVal cellStyle As HSSFCellStyle)
Dim cell As HSSFCell = row.CreateCell(colId)
cell.SetCellValue(value)
cell.CellStyle = cellStyle
End Sub
-1:毫无疑问! – 2010-10-13 19:54:27
问题。如何减少这个时间? – James123 2010-10-13 20:00:32
目前正在进行多少时间,您认为可以接受的时间是多少? – 2010-10-14 17:29:16