以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 如何获得多文件列中的文件数目 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=24851) |
-- 作者:Fotable -- 发布时间:2012/10/24 20:49:00 -- 如何获得多文件列中的文件数目 多文件型 文件型列只能管理一个文件,如果一行数据有可能涉及到多个文件,那么请用多文件型。 只有字符型或者备注型列才能扩展为多文件型。 对于多文件型列,有一个专门的列窗口用于管理文件: 通常使用备注列或者字符列来扩展为多文件型,如果使用字符列,请注意合理设置字符列的长度。 比如是文件表 中的多图片列 tables("文件").current("多图片") 我现在想分析这个这多图片列里存储了多少个文件,也就是要分析这个多文件字段的的字符串有多少个回车换行符。 dim s as string = tables("文件").current("多图片") dim piccount as integer piccount = s.? [此贴子已经被作者于2012-10-24 20:54:13编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2012/10/24 20:57:00 -- dim s as string = tables("文件").current("多图片") s = s.replace(vbcrlf, vblf) Dim fls() As String = s.split(vblf) output(fls.Length) [此贴子已经被作者于2012-10-24 20:57:14编辑过]
|
-- 作者:Fotable -- 发布时间:2012/10/24 21:05:00 -- piccount = 0 for i as integer = 3 to s.length -1 if s.chars(i) = vblf then piccount = piccount +1 i = i+3 end if next 这样可以吗? [此贴子已经被作者于2012-10-24 21:17:34编辑过]
|
-- 作者:Fotable -- 发布时间:2012/10/24 21:20:00 -- 以下是引用狐狸爸爸在2012-10-24 20:57:00的发言:
dim s as string = tables("文件").current("多图片") s = s.replace(vbcrlf, vblf) Dim fls() As String = s.split(vblf) output(fls.Length) [此贴子已经被作者于2012-10-24 20:57:14编辑过] 为什么不可以直接 Dim fls() As String = s.split(vbcrlf) output(fls.Length) |
-- 作者:Fotable -- 发布时间:2012/10/24 21:28:00 -- 以下是引用狐狸爸爸在2012-10-24 20:57:00的发言:
dim s as string = tables("文件").current("多图片") s = s.replace(vbcrlf, vblf) Dim fls() As String = s.split(vblf) output(fls.Length) [此贴子已经被作者于2012-10-24 20:57:14编辑过] 狐爸你的这个算法 在 s= “”的时候 会计算出 fls.length = 1 而实际要求当s= “”的时候,= 0 [此贴子已经被作者于2012-10-24 21:30:54编辑过]
|
-- 作者:Fotable -- 发布时间:2012/10/24 22:04:00 -- 这个错误的原因 应该算在 split函数上,当空字符串 进行split的时候,应该得到一个长度为0的空数组,而不是长度为1的数组。 所以应该纠正下split函数 |
-- 作者:狐狸爸爸 -- 发布时间:2012/10/24 22:13:00 -- dim s as string = tables("文件").current("多图片") if s >"" then s = s.replace(vbcrlf, vblf) Dim fls() As String = s.split(vblf) output(fls.Length) end if |