Go4Expert

Go4Expert (http://www.go4expert.com/)
-   C (http://www.go4expert.com/forums/c/)
-   -   input/ouput/ looping (http://www.go4expert.com/forums/input-ouput-looping-t943/)

VickieQuirk 28Jun2006 00:44

input/ouput/ looping
 
I need help with the following assignment. I just can't seem to get it to work? It just creates a blank file for addresses.
If anyone can tell me what I am doing wrong I will be forever grateful..

Ok, here's the assignment:
You're working for a company that's building an email list from files of mail messages. They would like you to write a program that reads a file called mail.dat, and that outputs every string containing the @ sign to file addresses.dat. For the purpose of this project, a string is defined as it is by the C++ stream reader - a contiguous sequence of non-whitespace characters.
Here is what mail.dat has in it:
---------------------------------------------------------------------------
From: kadcock@clevelandstatecc.edu
Date: June 4, 2005

To: Joe_student@tbrschool.edu

Joe,

Hope you have a good semester.

Regards,
Ken Adcock
---------------------------------------------------------------------------
Here is what I have done:
Code: CPP

#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main()
{
   
    ifstream inFile;
    ofstream outFile;
    string tempString;
   
   
    inFile.open("mail.dat");
    outFile.open("addresses.dat");
   
    while(inFile)
    {
        inFile>>tempString;
        if(tempString.find('@')!=string::npos)
            outFile<<tempString;
       
    }
   
    inFile.close();
    outFile.close();
    return 0;
}


shabbir 28Jun2006 10:46

Re: input/ouput/ looping
 
The problem is with
inFile>>tempString;
which does not allows the whitespaces and it just restricts itself to the first blank character and so does not fetch any email address in tempString. Try using getline instead.

VickieQuirk 28Jun2006 18:55

Re: input/ouput/ looping
 
thank you :)

shabbir 28Jun2006 18:59

Re: input/ouput/ looping
 
Quote:

Originally Posted by VickieQuirk
thank you :)

My pleasure.


All times are GMT +5.5. The time now is 11:49.