Solved

TextStream: move back to top of file?

Posted on 2002-05-29
10
244 Views
Last Modified: 2008-02-01
Is there a method I can use to move to the top of a text file when reading? Or do I need to use a different object?

Thanks!
0
Comment
Question by:SuperMario
  • 3
  • 3
  • 2
  • +1
10 Comments
 
LVL 5

Accepted Solution

by:
raizon earned 50 total points
ID: 7042332
Only way I know of using the TextStream Object would be to close the file and destroy the object then re open it.  This will put you back at the beginning of the file.  However it doesn't seem to efficient to me.

0
 
LVL 3

Author Comment

by:SuperMario
ID: 7042335
Me either... I have restructured my code a little bit.. but thanks anyway :)
0
 
LVL 5

Expert Comment

by:raizon
ID: 7042354
Did you use the textstreamobject or go a different route?
0
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 7042584
what do you mean by "top of a text file when reading"?
0
 
LVL 3

Author Comment

by:SuperMario
ID: 7042801
I went a different route, actually... I was reading in line by line initially and needed to return to the initial state for another function. I ended up writing it in the same piece of code.
0
Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

 
LVL 2

Expert Comment

by:Crin
ID: 7042824
You can use following:

FileNum = FreeFile(0)
Open "File.txt" For Random As FileNum Len = 1

And then take text from any position using:

Get FileNum, CurFilePos + i, curchar

However, this require to rewrite LineInput function which is very simple, say if you need help here.

Sincerely,
Crin


0
 
LVL 16

Expert Comment

by:Richie_Simonetti
ID: 7042827
Then, problem was solved by yourself using different approach?
0
 
LVL 2

Expert Comment

by:Crin
ID: 7042839
Sorry, posted comment without enough explanations.

Get FileNum, CurFilePos, curchar

This line will read ONE symbol into curchar variable taken from CurFilePos position.

public Function CustomLineInput(CurFilePos as long) as string
Dim Result as string, curchar as String * 1, i as long

Result = ""
curchar = ""
i = 0

Do
  Get FileNum, CurFilePos + i, curchar
  if curchar <> chr(13) and curchar <> chr(10) then
    Result = Result & curchar
  end if
Loop Until curchar = chr(13) and CurFilePos + i < LOF(FileNum)

CustomLineInput = Result

End Function

Now you just need to maintain CurFilePos right way.

Sincerely,
Crin
0
 
LVL 2

Expert Comment

by:Crin
ID: 7042844
It is night here, so some typos coming...

Loop Until curchar = chr(13) and CurFilePos + i < LOF(FileNum)

should be:

Loop Until curchar = chr(13) or CurFilePos + i = LOF(FileNum)

Sincerely,
Crin

0
 
LVL 5

Expert Comment

by:raizon
ID: 7042925
yes I believe that SuperMario did solve this on thier own by using a different approach.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

When trying to find the cause of a problem in VBA or VB6 it's often valuable to know what procedures were executed prior to the error. You can use the Call Stack for that but it is often inadequate because it may show procedures you aren't intereste…
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now