Re: reading string from a text file from vc++ without MFC support
On Sat, 16 Jun 2007 23:11:11 -0700, rindam2002@yahoo.com wrote:
will U plz get me a code for reading file line by
line using FILE structure.
OK, I understand that you want to use C 'FILE *'.
my text file will be having random number of
data such as
atlanta/123
atlanta/greetings
atlanta/double
............
............
....//random nuber of lines.
Now I need to read each line of the file and save it into a string
variable and use this variable in the application.the problem here is
The problem is easy. You just need to open the file using _tfopen
(_tfopen is the Unicode-aware version of standard C fopen), read text
lines using _fgetts (the Unicode-aware version of standard C fgets),
until you reach end of file (use feof to test it) and close the file
with fclose.
You read each file line into a temporary local buffer (TCHAR array of
maximum specified size) using _fgetts, and then you can store the line
you have just read in the old-style C buffer into a more modern robust
useful CString instance.
<CODE>
CString fileName = _T("c:\\prova.txt");
// Open the file for reading in text mode
FILE * file = _tfopen( fileName, _T("rt"));
// If file == NULL ... error
// Maximum number of characters in a line
static const int maxLineChars = 200;
// This will store each line of text
TCHAR line[ maxLineChars ];
// Read line by line from file
while ( ! feof(file) )
{
// Clear destination buffer
::ZeroMemory( line, sizeof(line) );
// Read the line
_fgetts( line, maxLineChars, file );
// Now 'line' contains the line read from file.
// Do your processing.
// e.g.: You may store the read line into a CString
CString strLine( line );
// Process strLine...
// DoLineProcessing( strLine );
...
}
// Close the file
fclose(file);
file = NULL; // Avoid dangling references
</CODE>
that I dont know How many lines will the file have.
No problem: 'feof' function and 'while' statement help you here :)
MrAsm