这里有一个文件SubAccountList.txt,
文件内容:
字符1(3位)
字符2(3位)
字符3(2位)
字符4(2位)
字符5(1位,“+” 、“-” )
字符6(10位)
字符7(8位)
举例数据:
001RRBHQ 0+ 100000020100330002RRBHQ 0- 9000020100330 例子说明:
第一串字符:
001 --->字符1(3位)
RRB --->字符2(3位)
HQ --->字符3(2位)
0 --->字符4(2位)
+ --->字符5(1位,“+” 、“-” )
1000000--->字符6(10位,最后两位角分)
20100330 --->字符7(8位,年月日)
第二串字符:
002 --->字符1(3位)
RMB --->字符2(3位)
HQ --->字符3(2位)
0 --->字符4(2位)
- --->字符5(1位,“+” 、“-” )
90000--->字符6(10位,最后两位角分)
20100330 --->字符7(8位,年月日) 要求将上面这个文件中的内容读取且动态显示成以字符1,字符2,字符3,
字符4,字符5,字符6,字符7为表头的7列n行的(要分页)一个表。 下面是现在为止写的代码:
Sub Authorized()
Dim m_SubAccLst '这里是结构体数组
Dim SubAccountFileName
Dim m_ShowIndex SubAccountFileName = GetSubAccountFileName If IsExistFile(SubAccountFileName) = true then '如果文件存在
'这里封装一个模块,提供此方法,模块内定义一个SubAccount的类
Set m_SubAccLst = GetSubAccountList(SubAccountFileName)
If m_SubAccLst.Count > 0 then
m_ShowIndex = 0
ShowSubAccList()
End If
Else
Message "111"
End If End Sub '上一页主要是调整m_ShowIndex的值
Sub DownPage()
m_ShowIndex = m_ShowIndex + m_CurMaxRows
ShowSubAccList()
End Sub '下一页
Sub UpPage()
m_ShowIndex = m_ShowIndex - m_CurMaxRows
ShowSubAccList()
End Sub Sub ShowSubAccList()
Dim i
for i = m_ShowIndex to m_ShowIndex + m_CurMaxRows
TableTD_SubAccNo.InnerText = m_SubAccLst.Item(i).SubAccNo
TableTD_CurrencyNo.InnerText = m_SubAccLst.Item(i).CurrencyNo
:
Next Table.addRow
End Sub 请问如何动态追加表的行?拜谢! 下面是结构体数组(SubAccLst)
Const SUBACCNOLEN = 3
Const CURRENCYNOLEN = 3
Const STORETYPELEN = 2
Const STORETIMELEN = 2
Const ACCAMTFLAGLEN = 1
Const ACCAMTLEN = 10
Const OPENACCDATELEN = 8 Class SubAccount
Private Sub Class_Initialize
m_SubAccNo = Space(SUBACCNOLEN)
m_CurrencyNo = Space(CURRENCYNOLEN)
m_StoreType = Space(STORETYPELEN)
m_StoreTime = Space(STORETIMELEN)
m_AccAmtFlag = Space(ACCAMTFLAGLEN)
m_AccAmt = Space(ACCAMTLEN)
m_OpenAccDate = Space(OPENACCDATELEN)
End Sub Private Sub Class_Terminate
End Sub ''''''''''''''''''''''''''''''''''''''''''''''''
''''设定参数的数据属性''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''
Public Property Let SubAccNo(inValue)
m_SubAccNo = inValue
End Property Public Property Let CurrencyNo(inValue)
m_CurrencyNo = inValue
End Property Public Property Let StoreType(inValue)
m_StoreType = inValue
End Property Public Property Let StoreTime(inValue)
m_StoreTime = inValue
End Property Public Property Let AccAmtFlag(inValue)
m_AccAmtFlag = inValue
End Property Public Property Let AccAmt(inValue)
m_AccAmt = inValue
End Property Public Property Let OpenAccDate(inValue)
m_OpenAccDate = inValue
End Property ''''''''''''''''''''''''''''''''''''''''''''''''
''''获取参数的数据属性''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''
Public Property Get SubAccNo
SubAccNo = m_SubAccNo
End Property Public Property Get CurrencyNo
CurrencyNo = m_CurrencyNo
End Property Public Property Get StoreType
StoreType = m_StoreType
End Property Public Property Get StoreTime
StoreTime = m_StoreTime
End Property Public Property Get AccAmtFlag
AccAmtFlag = m_AccAmtFlag
End Property Public Property Get AccAmt
AccAmt = m_AccAmt
End Property Public Property Get OpenAccDate
OpenAccDate = m_OpenAccDate
End Property ''''''''''''''''''''''''''''''''''''''''''''''''
Private m_SubAccNo '字符1(3位)
Private m_CurrencyNo '字符2(3位)
Private m_StoreType '字符3(2位)
Private m_StoreTime '字符4(2位)
Private m_AccAmtFlag '字符5(1位,“+” 、“-” )
Private m_AccAmt '字符6(10位)
Private m_OpenAccDate '字符7(8位)
End Class Class SubAccountList
Private Sub Class_Initialize
m_Size = -1
ReDim m_SubAccountArr(0)
End Sub Private Sub Class_Terminate
dim i
for i = 0 to Ubound(m_SubAccountArr)
Set m_SubAccountArr(i) = nothing
next
End Sub Public Function PushBack(ByVal vObject)
m_Size = m_Size + 1
ReDim Preserve m_SubAccountArr(m_Size)
Set m_SubAccountArr(m_Size) = vObject
PushBack = m_Size
End Function Public Property Get Item(nIndex)
Set Item = m_SubAccountArr(nIndex)
End Property Public Property Let Item(nIndex, vObject)
Set m_SubAccountArr(nIndex) = vObject
End Property Property Get Count
Count = m_Size + 1
End Property Private m_SubAccountArr()
Private m_Size
End Class ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'假如这里有一串数据,这串数据是从文件
'"C:\SubAccountList\SubAccountList.txt"
'中取得的
'71387618361083109236198371371987319837198371298371983719837
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Dim ReadLine : ReadLine = "71387618361083109236198371371" Function GetSubAccountList()
Dim SubAccLst : Set SubAccLst = new SubAccountList
'第一行的读取开始、第二行的读取开始、...
Dim SubAcc
Set SubAcc = SubAccountItem(ReadLine)
if SubAcc is nothing then
else
SubAccLst.PushBack SubAcc
end if
'第一行的读取结束、第二行的读取结束、...
Set GetSubAccountList = SubAccLst
End Function Function SubAccountItem(ReadLine) Dim ReadLineLen : ReadLineLen = Len(ReadLine) if ReadLineLen <> (SUBACCNOLEN _
+ CURRENCYNOLEN _
+ STORETYPELEN _
+ STORETIMELEN _
+ ACCAMTFLAGLEN _
+ ACCAMTLEN _
+ OPENACCDATELEN) then
Set SubAccountItem = nothing
Exit Function
End if Dim ReadOffset : ReadOffset = 1 Dim SubAcc : Set SubAcc = new SubAccount Do While ReadOffset <= ReadLineLen
SubAcc.SubAccNo = Mid(ReadLine, ReadOffset, SUBACCNOLEN)
ReadOffset = ReadOffset + SUBACCNOLEN
SubAcc.CurrencyNo = Mid(ReadLine, ReadOffset, CURRENCYNOLEN)
ReadOffset = ReadOffset + CURRENCYNOLEN
SubAcc.StoreType = Mid(ReadLine, ReadOffset, STORETYPELEN)
ReadOffset = ReadOffset + STORETYPELEN
SubAcc.StoreTime = Mid(ReadLine, ReadOffset, STORETIMELEN)
ReadOffset = ReadOffset + STORETIMELEN
SubAcc.AccAmtFlag = Mid(ReadLine, ReadOffset, ACCAMTFLAGLEN)
ReadOffset = ReadOffset + ACCAMTFLAGLEN
SubAcc.AccAmt = Mid(ReadLine, ReadOffset, ACCAMTLEN)
ReadOffset = ReadOffset + ACCAMTLEN
SubAcc.OpenAccDate = Mid(ReadLine, ReadOffset, OPENACCDATELEN)
ReadOffset = ReadOffset + OPENACCDATELEN
Loop Set SubAccountItem = SubAcc
End Function
文件内容:
字符1(3位)
字符2(3位)
字符3(2位)
字符4(2位)
字符5(1位,“+” 、“-” )
字符6(10位)
字符7(8位)
举例数据:
001RRBHQ 0+ 100000020100330002RRBHQ 0- 9000020100330 例子说明:
第一串字符:
001 --->字符1(3位)
RRB --->字符2(3位)
HQ --->字符3(2位)
0 --->字符4(2位)
+ --->字符5(1位,“+” 、“-” )
1000000--->字符6(10位,最后两位角分)
20100330 --->字符7(8位,年月日)
第二串字符:
002 --->字符1(3位)
RMB --->字符2(3位)
HQ --->字符3(2位)
0 --->字符4(2位)
- --->字符5(1位,“+” 、“-” )
90000--->字符6(10位,最后两位角分)
20100330 --->字符7(8位,年月日) 要求将上面这个文件中的内容读取且动态显示成以字符1,字符2,字符3,
字符4,字符5,字符6,字符7为表头的7列n行的(要分页)一个表。 下面是现在为止写的代码:
Sub Authorized()
Dim m_SubAccLst '这里是结构体数组
Dim SubAccountFileName
Dim m_ShowIndex SubAccountFileName = GetSubAccountFileName If IsExistFile(SubAccountFileName) = true then '如果文件存在
'这里封装一个模块,提供此方法,模块内定义一个SubAccount的类
Set m_SubAccLst = GetSubAccountList(SubAccountFileName)
If m_SubAccLst.Count > 0 then
m_ShowIndex = 0
ShowSubAccList()
End If
Else
Message "111"
End If End Sub '上一页主要是调整m_ShowIndex的值
Sub DownPage()
m_ShowIndex = m_ShowIndex + m_CurMaxRows
ShowSubAccList()
End Sub '下一页
Sub UpPage()
m_ShowIndex = m_ShowIndex - m_CurMaxRows
ShowSubAccList()
End Sub Sub ShowSubAccList()
Dim i
for i = m_ShowIndex to m_ShowIndex + m_CurMaxRows
TableTD_SubAccNo.InnerText = m_SubAccLst.Item(i).SubAccNo
TableTD_CurrencyNo.InnerText = m_SubAccLst.Item(i).CurrencyNo
:
Next Table.addRow
End Sub 请问如何动态追加表的行?拜谢! 下面是结构体数组(SubAccLst)
Const SUBACCNOLEN = 3
Const CURRENCYNOLEN = 3
Const STORETYPELEN = 2
Const STORETIMELEN = 2
Const ACCAMTFLAGLEN = 1
Const ACCAMTLEN = 10
Const OPENACCDATELEN = 8 Class SubAccount
Private Sub Class_Initialize
m_SubAccNo = Space(SUBACCNOLEN)
m_CurrencyNo = Space(CURRENCYNOLEN)
m_StoreType = Space(STORETYPELEN)
m_StoreTime = Space(STORETIMELEN)
m_AccAmtFlag = Space(ACCAMTFLAGLEN)
m_AccAmt = Space(ACCAMTLEN)
m_OpenAccDate = Space(OPENACCDATELEN)
End Sub Private Sub Class_Terminate
End Sub ''''''''''''''''''''''''''''''''''''''''''''''''
''''设定参数的数据属性''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''
Public Property Let SubAccNo(inValue)
m_SubAccNo = inValue
End Property Public Property Let CurrencyNo(inValue)
m_CurrencyNo = inValue
End Property Public Property Let StoreType(inValue)
m_StoreType = inValue
End Property Public Property Let StoreTime(inValue)
m_StoreTime = inValue
End Property Public Property Let AccAmtFlag(inValue)
m_AccAmtFlag = inValue
End Property Public Property Let AccAmt(inValue)
m_AccAmt = inValue
End Property Public Property Let OpenAccDate(inValue)
m_OpenAccDate = inValue
End Property ''''''''''''''''''''''''''''''''''''''''''''''''
''''获取参数的数据属性''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''
Public Property Get SubAccNo
SubAccNo = m_SubAccNo
End Property Public Property Get CurrencyNo
CurrencyNo = m_CurrencyNo
End Property Public Property Get StoreType
StoreType = m_StoreType
End Property Public Property Get StoreTime
StoreTime = m_StoreTime
End Property Public Property Get AccAmtFlag
AccAmtFlag = m_AccAmtFlag
End Property Public Property Get AccAmt
AccAmt = m_AccAmt
End Property Public Property Get OpenAccDate
OpenAccDate = m_OpenAccDate
End Property ''''''''''''''''''''''''''''''''''''''''''''''''
Private m_SubAccNo '字符1(3位)
Private m_CurrencyNo '字符2(3位)
Private m_StoreType '字符3(2位)
Private m_StoreTime '字符4(2位)
Private m_AccAmtFlag '字符5(1位,“+” 、“-” )
Private m_AccAmt '字符6(10位)
Private m_OpenAccDate '字符7(8位)
End Class Class SubAccountList
Private Sub Class_Initialize
m_Size = -1
ReDim m_SubAccountArr(0)
End Sub Private Sub Class_Terminate
dim i
for i = 0 to Ubound(m_SubAccountArr)
Set m_SubAccountArr(i) = nothing
next
End Sub Public Function PushBack(ByVal vObject)
m_Size = m_Size + 1
ReDim Preserve m_SubAccountArr(m_Size)
Set m_SubAccountArr(m_Size) = vObject
PushBack = m_Size
End Function Public Property Get Item(nIndex)
Set Item = m_SubAccountArr(nIndex)
End Property Public Property Let Item(nIndex, vObject)
Set m_SubAccountArr(nIndex) = vObject
End Property Property Get Count
Count = m_Size + 1
End Property Private m_SubAccountArr()
Private m_Size
End Class ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'假如这里有一串数据,这串数据是从文件
'"C:\SubAccountList\SubAccountList.txt"
'中取得的
'71387618361083109236198371371987319837198371298371983719837
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Dim ReadLine : ReadLine = "71387618361083109236198371371" Function GetSubAccountList()
Dim SubAccLst : Set SubAccLst = new SubAccountList
'第一行的读取开始、第二行的读取开始、...
Dim SubAcc
Set SubAcc = SubAccountItem(ReadLine)
if SubAcc is nothing then
else
SubAccLst.PushBack SubAcc
end if
'第一行的读取结束、第二行的读取结束、...
Set GetSubAccountList = SubAccLst
End Function Function SubAccountItem(ReadLine) Dim ReadLineLen : ReadLineLen = Len(ReadLine) if ReadLineLen <> (SUBACCNOLEN _
+ CURRENCYNOLEN _
+ STORETYPELEN _
+ STORETIMELEN _
+ ACCAMTFLAGLEN _
+ ACCAMTLEN _
+ OPENACCDATELEN) then
Set SubAccountItem = nothing
Exit Function
End if Dim ReadOffset : ReadOffset = 1 Dim SubAcc : Set SubAcc = new SubAccount Do While ReadOffset <= ReadLineLen
SubAcc.SubAccNo = Mid(ReadLine, ReadOffset, SUBACCNOLEN)
ReadOffset = ReadOffset + SUBACCNOLEN
SubAcc.CurrencyNo = Mid(ReadLine, ReadOffset, CURRENCYNOLEN)
ReadOffset = ReadOffset + CURRENCYNOLEN
SubAcc.StoreType = Mid(ReadLine, ReadOffset, STORETYPELEN)
ReadOffset = ReadOffset + STORETYPELEN
SubAcc.StoreTime = Mid(ReadLine, ReadOffset, STORETIMELEN)
ReadOffset = ReadOffset + STORETIMELEN
SubAcc.AccAmtFlag = Mid(ReadLine, ReadOffset, ACCAMTFLAGLEN)
ReadOffset = ReadOffset + ACCAMTFLAGLEN
SubAcc.AccAmt = Mid(ReadLine, ReadOffset, ACCAMTLEN)
ReadOffset = ReadOffset + ACCAMTLEN
SubAcc.OpenAccDate = Mid(ReadLine, ReadOffset, OPENACCDATELEN)
ReadOffset = ReadOffset + OPENACCDATELEN
Loop Set SubAccountItem = SubAcc
End Function
解决方案 »
- VB6 读取 word 文档某表格某单元格中的所有内容??
- 帮我看一下这两句 有什么不一样
- 如何在VB程序中获得并读取一个文件的版本信息。
- 关于Msgbox 的使用?
- 在wql中关联的问题
- 如何限定多行文本框只能输入6行.?
- 大哥们,求救了,关于导EXCEL的问题,两天都未解决
- 有非常高的分, 一个很难的问题 希望vb高手们指点
- 愿意去上海工作的朋友请看:http://expert.csdn.net/TopicView.asp?id=47526
- 帮帮我!关于DBcombo控件!
- vb用什么方法判断一个对象在不在collection中,c#中有contains方法可用
- CDONTS如何获得发送结果?
http://topic.csdn.net/u/20080428/08/91592ebe-f82a-453a-a805-07f7771db9b3.html
2、将string01分成7数组变量,
3、将7个数组变量的值分别依次在控件MSHFlexGrid1中显示。
是不是只包括数字字母及 -号
该文件文件是ANSI编码还是UNICODE编码