Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Ворос явно не для не профисионалов! Добавлено: 23.07.02 00:35  

Автор вопроса:  AQUALITY | Web-сайт: dungeonsiege.narod.ru
Впорос таков , имеется текстовый файл нужно вытащить из него определенную строчку например третью ?  

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 Tovdi



ICQ: 160516960 

Вопросов: 13
Ответов: 37
 Профиль | | #1 Добавлено: 23.07.02 00:43

Нет проблем дорогой

intFileNum = FreeFile
Open App.Path & "\File.txt" For Input As #intFileNum
LinCount=1
Do While Not EOF(intFileNum)
    Line Input #intFileNum, strInfo
    if LinCount=3 Then MyLin= strInfo:Exit Sub
    LinCount=LinCount+1
Loop

Close #intFileNum

Ответить

Номер ответа: 2
Автор ответа:
 AGReSSoRs



Вопросов: 2
Ответов: 5
 Профиль | | #2 Добавлено: 23.07.02 01:27

а если все сразу?

Ответить

Номер ответа: 3
Автор ответа:
 AQUALITY



Вопросов: 7
Ответов: 7
 Web-сайт: dungeonsiege.narod.ru
 Профиль | | #3
Добавлено: 23.07.02 01:32

Спасибо, но а покороче нет ???

Ответить

Номер ответа: 4
Автор ответа:
 Tovdi



ICQ: 160516960 

Вопросов: 13
Ответов: 37
 Профиль | | #4 Добавлено: 23.07.02 09:42

Function ReadLineTextFile (NumLin)
   Const ForReading = 1, ForWriting = 2
   Dim fso, ts
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set ts = fso.OpenTextFile("c:\File.txt", ForReading)
 For i=1 to NumLin-1
  ts.SkipLine
 Next
   ReadLineTextFile = ts.ReadLine
End Function

Ответить

Номер ответа: 5
Автор ответа:
 Tovdi



ICQ: 160516960 

Вопросов: 13
Ответов: 37
 Профиль | | #5 Добавлено: 23.07.02 09:52

Или тоже самое, но хаваем весь файл сразу.

Потходит лиш в том случае если файл относительно не большой, так как запихиваем его в одну переменную.

Function TextFile(FilName,NumStr)
 Const ForReading = 1, ForWriting = 2
 ;Dim fso, ts
 Set fso = CreateObject("Scripting.FileSystemObject")
 Set ts = fso.OpenTextFile(FilName, ForReading)
  ReadAllTextFile = ts.ReadAll
  SplitText=Split(ReadAllTextFile,vbCRLf)
  TextFil=SplitTex(NumStr-1)
End Function

Ответить

Номер ответа: 6
Автор ответа:
 Barsik



Разработчик Offline Client

ICQ: 343368641 

Вопросов: 17
Ответов: 686
 Web-сайт: barsik.newmail.ru
 Профиль | | #6
Добавлено: 10.09.04 18:33
а зачем короче???

Ответить

Номер ответа: 7
Автор ответа:
 Lister



ICQ: 298621256 

Вопросов: 57
Ответов: 304
 Профиль | | #7 Добавлено: 10.09.04 19:50
Код, приведенный в ответе 1 содержит одну маленькую, но весомую ошибку: не рекомендуется применять Exit Sub, т.к. файл #intFileNum остается открытым. Я бы порекомендовал использовать Exit Do

Ответить

Номер ответа: 8
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #8
Добавлено: 10.09.04 20:27
Ну, если к работающему коду Tovdy придираться, то в примере 2 и 3 надо бы сделать

Set fso = Nothing
Set ts = Nothing

предже, чем закрывать функцию. Чтобы всё до конца корректно :)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам