Как Убрать Интервалы Между Строками?

Тема в разделе "Visual Basic", создана пользователем Kventin, 22 окт 2012.

  1. Kventin

    Kventin Гость

    Подскажите, как в получаемом файле добиться, чтобы небыло межстрочных интервалов? Сделал вывод с одну строку через табуляцию-интервалы все равно остались.

    Код (LotusScript):
    Const strComputer = "."
    Dim objFSO, objWMIService, colEvents, objEvent, outFile
    Dim dtmStartDate, dtmEndDate, DateToCheck, fileDate
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Set dtmStartDate = CreateObject("WbemScripting.SWbemDateTime")
    Set dtmEndDate = CreateObject("WbemScripting.SWbemDateTime")
    'change the date form "/" to "-" so it can be used in the file name
    fileDate = Replace(Date - 7,"/","-")
    Set outFile = objFSO.CreateTextFile("D:\" & fileDate & "-Events.txt",True)
    DateToCheck = Date - 20
    dtmEndDate.SetVarDate Date, True
    dtmStartDate.SetVarDate DateToCheck, True

    Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

    Set colEvents = objWMIService.ExecQuery _
    ("Select * from Win32_NTLogEvent where EventCode = '20158' and TimeWritten >= '" _
    & dtmStartDate & "' and TimeWritten < '" & dtmEndDate & "'")

    Function evtdatetime(evttime)
    Dim tmGen, dtPart, tmPart
    tmGen = Left(evttime, 14)
    dtPart = Left(tmGen, 8)
    tmPart = Right(tmGen, 6)
    'evtdatetime = Mid(dtPart, 2) & "." & Right(dtPart,5, 2) & "." & Left(dtPart, 4) & " " & _  
    evtdatetime = Right(dtPart, 2) & "." & Mid(dtPart, 5, 2) & "." & Left(dtPart, 4) & " " & _   
    Left(tmPart, 2) & ":" & Mid(tmPart, 3, 2) & ":" & Right(tmPart, 2)                       
    End Function

    For each objEvent in colEvents
    outFile.WriteLine evtdatetime(objEvent.TimeWritten) & " " & objEvent.Message
    next
    outFile.Close
    MsgBox "Файл сохранен на диск С:/"
     
  2. alex77755

    alex77755 Well-Known Member

    Регистрация:
    15 фев 2009
    Сообщения:
    128
    Симпатии:
    0
    Меня всегда удивляет: зачем применять "тяжёлую артилерию" FSO для создания текстового файла.
    Самый примитивный метод Open For Output намного проще и понятней.
    Если, конечно, это не NET.
    Но по представленным огрызкам кода это не понятно:
    Процедуры нет ни одной. Есть два непонятных куска кода и есть функция, которая ничего не возвращает.
    Так как первая строка закомментирована, а в конце строки стоит перенос. И в итоге всё назначение закомментировано
     
  3. Hralain

    Hralain New Member

    Регистрация:
    1 ноя 2013
    Сообщения:
    1
    Симпатии:
    0
    txtFile1 - переменная, в которую я загнал весь файл
    i = 1 '
    Do While i < Len(txtFile1)
    intPoz1 = InStr(i, txtFile1, " " & vbCrLf) 'ищем позицию пробел + enter
    If intPoz1 > 0 Then ' если нашли
    i = intPoz1 ' переходим на нее
    txtFile1 = Left(txtFile1, intPoz1 - 1) & Mid(txtFile1, intPoz1 + 2) ' выводим то, что до нее + что после, в следствие чего пустая строка удаляется
    Else
    i = Len(txtFile1)
    End If
    Loop
     
Загрузка...

Поделиться этой страницей