• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 134
  • Last Modified:

Special retrieval of a string from file <part 2>

Hello Tim and all others!
Thanks for the code but there is a slight problem:
- I am trying to read a "user_id" from a certain cookie text file
- I try to read a new line using your code - but it reads the whole file content into the string! (although if I open the cookie with Word - I see that there are new lines, so there must be new line characters in the cookie file, no?)
- As a result: I crash when trying to execute the command: Input #1, strLine2
(according to your code -see above)
- If I can find out how to advance the file pointer, that would help as well.
- To sum up: I need to skip the newline character(that I saw with Word) which appears after the string "user_id" that I am looking for and then skip a newline character, then read a string (representing the numeric id) which ends in the next newline character(this, again, I saw with Word)
- Please tell me what to do - 10'x
P.S. I miss C/C++ - this would have been over a long time ago...
although VB has its features...
1 Solution
When you read cookie files, there is no VbCrLf separating the end of lines.  Cookies only use VbLf at the end of each line.

To read a cookie file, you need to read the whole file, then use instr() to find each line...

For example:

    Dim fNum As Long
    Dim Cookie As String
    Dim CookieLine As String
    Dim iVal As Long
    Dim jVal As Long
    fNum = FreeFile
    Open "C:\windows\cookies\mcrider@experts-exchange[1].txt" _
        For Input Access Read As fNum
    Input #fNum, Cookie
    Close fNum
    jVal = 0
        jVal = jVal + 1
        iVal = InStr(1, Cookie, vbLf)
        If iVal = 0 Then Exit Do
        CookieLine = Left$(Cookie, iVal - 1)
        Cookie = Mid$(Cookie, iVal + 1)
        Debug.Print "Line #" + CStr(jVal) + ": " + CookieLine

Something that might help speed up this code is the new split function in VB 6

Split(expression[, delimiter[, limit[, compare]]])


Featured Post

Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

Tackle projects and never again get stuck behind a technical roadblock.
Join Now