2013-09-24 6 views
0

을 사용하여 .asp 확장자를 가진 파일을 제외한 폴더의 모든 파일을 표시합니다.배열에 값 추가 - 클래식 ASP

배열에 파일 이름을 추가하여 각 요소에 objFileItem.Name이 추가되도록 tmpArray에 추가합니다.

tmpArray(k) = objFileItem.Name을 사용해 보았지만 오류가 발생했습니다. 당신이 항목 (100 이하)의 합리적인 금액이있는 경우

For Each objFileItem In objFolderContents 
    strFileExtension = LCase(Mid(objFileItem.Name, _ 
     InStrRev(objFileItem.Name, ".", -1, 1) + 1)) 
     If strFileExtension <> "asp" Then 
      strImages=strImages & objFileItem.Name 
     end if 

Next 
+2

아마도 당신은 오류를 공유하고 싶습니다, "그러나이 오류를 던지고있다" 그것은 던지고있다. 더 이상 나는 당신이 제공 한 코드에서'tmpArray'를 참조하지 않는다. –

+1

"strImages"는 어디에서 초기화합니까? –

+0

@Diodeus 초기화 할 필요가 없습니다. VBScript는 'strImages = strImages & objFileItem.Name'의 첫 번째 항목에서 빈 문자열이라고 간주합니다. –

답변

2

은 다음과 같이 동적 배열을 사용

Dim tmpArray() 
ReDim tmpArray(-1) 
For Each objFileItem In objFolderContents 
    strFileExtension = LCase(Mid(objFileItem.Name, _ 
     InStrRev(objFileItem.Name, ".", -1, 1) + 1)) 
    If strFileExtension <> "asp" Then 
     strImages = strImages & objFileItem.Name 
     ReDim Preserve tmpArray(UBound(tmpArray) + 1) 
     tmpArray(UBound(tmpArray)) = objFileItem.Name 
    End If 
Next 

'show array items: 
Response.Write("Total of " & (UBound(tmpArray) + 1) & " files:<br />") 
For k=0 To UBound(tmpArray) 
    Response.Write(tmpArray(k) & "<br />") 
Next 

'when done with the array, release resources to prevent memory leak: 
Erase tmpArray