一段代码,请帮忙看看问题可能在哪里以及怎么解决。。。在线等
for i = 1 to ll_rowcount
ls_name = upper(dw_song.getitemstring(i, "name"))
ls_language = trim(dw_song.getitemstring(i, "language"))
ls_singer = trim(dw_song.getitemstring(i, "singer"))
if isnull(ls_singer) then
ls_singer = ""
end if
ls_singer2 = trim(dw_song.getitemstring(i, "singer2"))
if (isnull(ls_singer2) = false) and ls_singer2 <> "" then
ls_singer = ls_singer + "^" + ls_singer2
end if
ls_code = trim(dw_song.getitemstring(i, "code"))
//如果当前行与上一行的歌曲名/语言/歌星相同,则不做处理
if ls_name = ls_name_old and ls_language = ls_language_old and ls_singer = ls_singer_old then
else
ls_bz = ls_code + "||" + ls_name + "||" + ls_singer + "||" + ls_language
//转换为unicode
lb_bz = tounicode(ls_bz)
li_write_file = filewrite(li_open_file,lb_bz)
if li_write_file < 0 then
messagebox("提示","写文件出错")
return -1
end if
ls_name_old = ls_name
ls_language_old = ls_language
ls_singer_old = ls_singer
end if
next
ll_rowcount 即数据大约是120000左右
现在每次执行 只能处理2600多条,然后windows报系统错,直接把程序给关闭了。
并且可以保证数据有效性没有问题。
怀疑是tounicode()出错,但是也不确定,因为增加调试日志记录函数,显示已执行的2600多次调用都是正确的
请主神们 指点,谢谢,在线等