我正在尝试编写一个LS代理来扫描Windows中的目录,例如:'C:\'表示任何文件和子目录.对于每个子目录,它将进入并搜索更多文件和子目录并继续,直到找不到更多.我习惯于编写递归代码来替换或删除长字符串中的字符但是对于这个我完全迷失了.下面是我的代码(它是来自domino帮助文件的代码和我在IBM站点中找到的代码的混合):
Sub Initialize
Dim pathname As String, filename As String
pathname = "C:\*.*"
filename = Dir(pathname, 16)
Print "Begin scan"
Do While filename<>""
If IsDir(pathname+filename)=True Then
Print pathname+filename+" is a directory"
'look for more directories and files in here
Else
Print filename+" is a file"
End If
filename=Dir()
Loop
Print "Finish scan"
End Sub
Function IsDir(Path As String) As Integer
Dim Void&
Dim Result As Boolean
On Error GoTo ErrorHandler
Void=FileLen(Path)
Result=False
GoTo Over
ErrorHandler:
Result=True
Resume Over
Over:
IsDir=Result …Run Code Online (Sandbox Code Playgroud) 如何在此模式中使用lotusscript生成一个包含8个字符的字符串?例如:0E 1F A3 ZK(包括最后一个在内的每2个字符后面有空格).每个字符只能是0-9或AZ(仅限大写).我之前使用过Randomize和Rnd方法,并考虑在这里应用它,但我不确定这是否是正确的方法以及如何实现它.另一件事是这个字符串将保存到我的文档中,我有一个视图列出每个生成的字符串.这意味着每次生成字符串时,它必须是唯一的.如果生成的字符串已在另一个文档中使用,则继续生成,直到生成一个尚未使用的字符串.
我在我的组合框值中执行了以下代码,但它是空的虽然我确实将一些用户放入了带有"Reviewer"角色的ACL中:
var arr=new Array();
var acl:NotesACL=database.getACL();
var acle:NotesACLEntry=acl.getFirstEntry();
while(acle.getRoles().contains('[Reviewer]')){
arr.push(acle.getName());
acle=acl.getNextEntry(acle);
}
return arr;
Run Code Online (Sandbox Code Playgroud)
我的数据库在服务器上.我正在使用8.5.3 FP3 UP1.