first,chm to html to director:chm-html\
Code: Select all
Global n,m
Procedure ListFiles(directory.s,directoryid)
If ExamineDirectory(directoryid,directory,"*.*")
While NextDirectoryEntry(directoryid)
file.s=DirectoryEntryName(directoryid)
Select DirectoryEntryType(directoryid)
Case #PB_DirectoryEntry_File
this_extension.s=LCase(GetExtensionPart(file))
If this_extension="html" Or this_extension="htm":file=directory+file:fz1=FileSize(file)
If OpenFile(0,file,#PB_Ascii):r=1:ss.s="":While Eof(0) = 0
v.a=ReadAsciiCharacter(0)
If v>127:If r=1:r=2:m+1:Debug file:EndIf:n+1;''=127
ss.s+"&#"+Str(v)+";":Else:ss.s+Chr(v):EndIf
Wend:CloseFile(0):If r=2:CreateFile(0,file,#PB_Ascii):WriteString(0,ss):CloseFile(0):EndIf
EndIf:EndIf
Case #PB_DirectoryEntry_Directory
If file<>"." And file<>"..":ListFiles(directory+file+"\",directoryid+1):EndIf
EndSelect:Wend:EndIf
EndProcedure
dt=Date()
;TODO
directory.s="chm-html\"
temp.s=Right(directory,1)
If temp<>"\" And temp<>"/";/,\,/\,\/�ǵȼ۵�
directory+"\":EndIf
Debug "bug files:"
ListFiles(directory,0); the last parameter should be zero
Debug "bug files,Count="+Str(m)+"; bug,Count="+Str(n)
Debug "time use,minute:"+Str((Date()-dt)/60)