C/C++ Help
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
 
User Name:
Password:
Remember me
 
Go Back   Dev Articles Community ForumsProgrammingC/C++ Help

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Display Modes
 
Unread Dev Articles Community Forums Sponsor:
  #1  
Old January 20th, 2005, 07:08 PM
Link-Jun Link-Jun is offline
Registered User
Dev Articles Newbie (0 - 499 posts)
 
Join Date: Jan 2005
Posts: 4 Link-Jun User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 43 m 58 sec
Reputation Power: 0
Closing and Reopening Files

Hey guys, need some help. My program reads from a text file by a for loop,
and then once it reaches the end of the file, I need it to start back at the beginning
of the file. What I did was simple, I just did FileIn.close(); and then FileIn.open(filename);, but
it doesnt work for some reason. I have some error-trapping directly after the filein.open in the
case that it fails (if(!FileIn)), and everytime it goes right into that if statement. Is there some
other way to read from the beginning of your file again after it has reached the end of the file?

Reply With Quote
  #2  
Old January 21st, 2005, 05:47 AM
kode_monkey kode_monkey is offline
Contributing User
Dev Articles Newbie (0 - 499 posts)
 
Join Date: Jul 2003
Posts: 367 kode_monkey User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 7 m 21 sec
Reputation Power: 6
I don't see why it would fail in this way. Could you post the section of code up so we can have a look and see if there's something else causing the problem.

-KM-

Reply With Quote
  #3  
Old January 21st, 2005, 09:47 PM
Link-Jun Link-Jun is offline
Registered User
Dev Articles Newbie (0 - 499 posts)
 
Join Date: Jan 2005
Posts: 4 Link-Jun User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 43 m 58 sec
Reputation Power: 0
The first FileIn.open works fine, and it goes through the following do loop perfectly,
up until it gets to the part where its supposed to repeat the song (hence the closing
and reopening of the file). At that point it goes right into the if(!FileIn) error-trap,
and I have no idea why. I already tried doing FileIn.seekg(0), but that didn't work
either for some reason.

FileIn.open(filename);
if (!FileIn)

{

cerr << "Cannot open file.\n";

exit(1);

}

FileIn >> tempo;

FileIn.get();


done =
false;
do
{

if (!done)

{

Flag =
false;

FileIn.getline(tnote, 4);

for(y = 0; y <= 3; y++)

{

if (tnote[y] == '\n' || tnote[y] == '\0')

Flag =
true;

if (Flag)

tnote[y] = ' ';

if (y == 3)

tnote[y] = '\0';

}

if(tnote[0] != ' ')

{

if (tnote[0] == 'T')

FileIn >> tempo;

else

FileIn >> tdur;

FileIn.get();

}

freq = Frequency(tnote);

if (tnote[0] == 'R' && RepeatOn)

repeat =
true;

if (tnote[0] != 'R' && tnote[0] != 'X' && tnote[0] != ' ' && tnote[0] != 'T')

{

cout << tnote << ' ' << tdur << endl;

if (tnote[0] == 'P')

sleep((clock_t)(tdur*(tempo / 1000.)));

else

bBeep = Beep(freq, (tdur*(tempo / 1000.)));

}

if (tnote[0] == 'X')

if (repeat)

{

FileIn.close();

FileIn.open(filename);

if (!FileIn)

{

cerr << "Cannot open file.\n";

exit(1);

}

FileIn >> tempo;

FileIn.get();

do

{

FileIn.getline(tnote, 4);

if (tnote[0] != ' ')

{

FileIn >> tdur;

FileIn.get();

}

if (tnote[0] == 'R')

break;

}
while(true);

}

else

done = true;

}

}
while (true);

Reply With Quote
Reply

Viewing: Dev Articles Community ForumsProgrammingC/C++ Help > Closing and Reopening Files


Thread Tools  Search this Thread 
Search this Thread:

Advanced Search
Display Modes  Rate This Thread 
Rate This Thread:


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
View Your Warnings | New Posts | Latest News | Latest Threads | Shoutbox
Forum Jump

 Free IT White Papers!
 
How to Present Effectively Online
This white paper offers practical and actionable advice on the key steps that any presenter should consider as they plan and execute a Webinar or online meeting.

Request Your Free Technology Downloads!
 
Open Source Security Myths
Open Source Software (OSS) is computer software whose source code is available to the general public with relaxed or non-existent intellectual property restrictions (or arrangement such as the public domain), and is usually developed with the input of many contributors.

Request Your Free Technology Downloads!
 
Power and Cooling Capacity Management for Data Centers
This paper describes the principles for achieving power and cooling capacity management.

Request Your Free Technology Downloads!
 
Scalable, Fault-Tolerant NAS for Oracle - The Next Generation
For several years NAS has been evolving as a storage alternative for Oracle databases, and for good reason: NAS is quite often the simplest, most cost-effective storage approach for Oracle. Learn about the benefits that HP's approach to scalable NAS brings to Oracle environments in this comprehensive white paper.

Request Your Free Technology Downloads!
 
Understanding Web Application Security Challenges
This white paper discusses many common threats and preventive measures for Web application security, and explains what you can do to help protect your organization.

Request Your Free Technology Downloads!
 

Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
  
 





© 2003-2008 by Developer Shed. All rights reserved. DS Cluster 5 hosted by Hostway
Stay green...Green IT