반응형
텍스트 파일에서 줄 읽기, 처음 두 줄 건너뛰기
마이크로소프트 오피스 워드 2003에 있는 이 매크로 코드는 텍스트 파일의 줄을 읽습니다.각 행은 코드에서 나중에 사용해야 하는 문자열 값을 나타냅니다.
그러나 텍스트 파일의 처음 두 줄에는 필요 없는 내용이 포함되어 있습니다.코드가 두 개의 첫 줄을 건너뛸 수 있도록 코드를 수정하려면 어떻게 해야 합니까?워드의 VBA 편집기 내의 "인텔리센스"는 정말 형편없습니다.
어쨌든, 코드는 이렇게 보입니다.
Dim sFileName As String
Dim iFileNum As Integer
Dim sBuf As String
Dim Fields as String
sFileName = "c:\fields.ini"
''//Does the file exist?
If Len(Dir$(sFileName)) = 0 Then
MsgBox ("Cannot find fields.ini")
End If
iFileNum = FreeFile()
Open sFileName For Input As iFileNum
Do While Not EOF(iFileNum)
Line Input #iFileNum, Fields
MsgBox (Fields)
그리고 이 코드는 현재 저에게 모든 라인을 제공합니다. 그리고 저는 처음 두 개를 원하지 않습니다.
그 전체Open <file path> For Input As <some number>
1990년대의 일입니다.또한 속도가 느리고 오류가 발생하기 쉽습니다.
VBA 편집기에서 도구 메뉴에서 참조를 선택하고 거의 모든 XP 또는 Vista 시스템에서 사용할 수 있는 "Microsoft 스크립팅 런타임"(scrrun.dll)을 찾습니다.그것이 거기에 있으니, 그것을 선택하세요.이제 좀 더 강력한 솔루션에 액세스할 수 있습니다.
With New Scripting.FileSystemObject
With .OpenTextFile(sFilename, ForReading)
If Not .AtEndOfStream Then .SkipLine
If Not .AtEndOfStream Then .SkipLine
Do Until .AtEndOfStream
DoSomethingImportantTo .ReadLine
Loop
End With
End With
임의 액세스를 사용할 수 있습니다.
Open "C:\docs\TESTFILE.txt" For Random As #1
Position = 3 ' Define record number.
Get #1, Position, ARecord ' Read record.
Close #1
Open sFileName For Input As iFileNum
Dim LineNum As Long
LineNum = 0
Do While Not EOF(iFileNum)
LineNum = LineNum + 1
Line Input #iFileNum, Fields
If LineNum > 2 Then
DoStuffWith(Fields)
End If
Loop
제가 너무 단순화한 것이 아닐까요?
다음 코드를 추가하기만 하면 됩니다.
Open sFileName For Input as iFileNum
Line Input #iFileNum, dummy1
Line Input #iFileNum, dummy2
........
순다르
Dim sFileName As String
Dim iFileNum As Integer
Dim sBuf As String
Dim Fields as String
Dim TempStr as String
sFileName = "c:\fields.ini"
''//Does the file exist?
If Len(Dir$(sFileName)) = 0 Then
MsgBox ("Cannot find fields.ini")
End If
iFileNum = FreeFile()
Open sFileName For Input As iFileNum
''//This part skips the first two lines
if not(EOF(iFileNum)) Then Line Input #iFilenum, TempStr
if not(EOF(iFileNum)) Then Line Input #iFilenum, TempStr
Do While Not EOF(iFileNum)
Line Input #iFileNum, Fields
MsgBox (Fields)
Loop
언급URL : https://stackoverflow.com/questions/938796/read-lines-from-a-text-file-but-skip-the-first-two-lines
반응형
'programing' 카테고리의 다른 글
다른 네트워크에 있는 경우 MariaDB에 대한 원격 연결이 작동하지 않음 (0) | 2023.08.27 |
---|---|
jQuery 대화 상자 내 양식에 대해 MVC에서 일반적으로 허용되는 접근 방식 (0) | 2023.08.27 |
jQuery를 사용하여 iframe 다시 로드 (0) | 2023.08.27 |
ASP에서 jQuery로 'WebMethod' 호출.NET 웹 양식 (0) | 2023.08.27 |
JQuery로 GET 및 POST 변수를 가져오는 방법은 무엇입니까? (0) | 2023.08.27 |