Solved

add text to end of existing text in file

Posted on 2016-08-30
16
60 Views
Last Modified: 2016-08-30
I have a text file with a bit of text at top and then a bunch of tab spaces after that text. Is it possible to append a bunch of text after all the tab spaces, so that the top text and tab spaces in the beginning of the file remains intact? The data that I need to append will come from an Access 2003 table, so I could use VB6 if need be.
0
Comment
Question by:QMBB
  • 9
  • 7
16 Comments
 
LVL 11

Expert Comment

by:CraigYellick
Comment Utility
Any of the low-level file writing operations offer an "append" mode.

open strFileName For Append As #intFileNumber

Open in new window

0
 

Author Comment

by:QMBB
Comment Utility
I got this working:

Private Sub Command180_Click()
Dim strFile_Path As String
strFile_Path = "C:\temp\test.txt"
Open strFile_Path For Append As #1
Write #1, "my text to append"
Close #1
End Sub

Open in new window


But it adds the " around the text, can't have that. Also, I need to call data from a table, have it export and write (append) to this file as tab delim.
0
 

Author Comment

by:QMBB
Comment Utility
Figured out the quotes... used Print instead of Write, and it doesn't output the quotes.

Only thing left is to get the data... I figure I can set up an auto-export job using a saved export spec once an hour to a different txt file, overwriting every time. Then, after that file has been created, I run this code to append the contents to the other text file (like my question started with). But I dont know how to call that second text file as the source of data to be appended... I need to replace "my text to append" with a path to the file (maybe).
0
 
LVL 11

Expert Comment

by:CraigYellick
Comment Utility
Try the PRINT statement instead of WRITE.
0
 

Author Comment

by:QMBB
Comment Utility
:-) got that. Now how do I grab the contents of a text file as the data to be appended, rather than have the data in the code (as in the snippet above)?
0
 
LVL 11

Expert Comment

by:CraigYellick
Comment Utility
In that case you'd need to open the source file as another file handle, and read from it then write to the output file. How complex is the record source? I'd probably go with outputting the query result directly to the output file.
0
 

Author Comment

by:QMBB
Comment Utility
It is about 70 fields, tab delimited. Id like to preserve the tab delimited txt file export from Access, because I know that works in the upload Im doing (Amazon inventory).
0
 

Author Comment

by:QMBB
Comment Utility
Isnt there just a simple way to replace this:

Write #1, "my text to append"

with something like this:

Write #1, C:\DataTo Be Appended.txt
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 11

Expert Comment

by:CraigYellick
Comment Utility
0
 

Author Comment

by:QMBB
Comment Utility
Yeah, I've seen lots of articles, was hoping for an example. Thanks anyway.
0
 
LVL 11

Accepted Solution

by:
CraigYellick earned 500 total points
Comment Utility
That article is a complete example, reading data from one file and copying to another. It does exactly what you want to do, so I figured it was a waste of time to reformat into an E-E post.
0
 

Author Comment

by:QMBB
Comment Utility
Using the MS example you posted, I'll have to start all over again but I'm already 95% there. Maybe it's worth it... I'll try it.
0
 

Author Closing Comment

by:QMBB
Comment Utility
That did it! Thanks much.
0
 
LVL 11

Expert Comment

by:CraigYellick
Comment Utility
Did you see the second method that uses DOS COPY? Pretty slick, one line of code.

Shell "command.com /c" & _
         "copy c:\dest.txt+c:\source.txt c:\dest.txt /b"

Open in new window

0
 

Author Comment

by:QMBB
Comment Utility
That would work via batch file, correct?
0
 
LVL 11

Expert Comment

by:CraigYellick
Comment Utility
Sure would. No need for the SHELL command part since you'd already be out in the DOS shell environment.
0

Featured Post

How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

Join & Write a Comment

Displaying an arrayList in a listView using the default adapter is rarely the best solution. To get full control of your display data, and to be able to refresh it after editing, requires the use of a custom adapter.
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
With Microsoft Access, learn how to start a database in different ways and produce different start-up actions allowing you to use a single database to perform multiple tasks. Specify a start-up form through options: Specify an Autoexec macro: Us…
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

772 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

11 Experts available now in Live!

Get 1:1 Help Now