View mode: basic / threaded / horizontal-split · Log in · Help
June 07, 2002
Problem with File streams
I have tried both the original stream.d and the one availible at DedicateD and have come to the same problem 
both times.  I use the following code to open a file.  It is some c++ code from Uni I am trying to convert over.  
The text files mentioned are "\n" delimited lists of words.

import stream;

alias char[] string;

void main( char[][] args )
{
	string myFile, yourFile;
	
	myFile = "lista.txt";
	yourFile = "listb.txt";

	printf("Got through the declarations, woowoo\n\n\n");

	string[] myList, yourList;

	campItems ( myFile, myList );
	campItems ( yourFile, yourList );

	for ( int i = 0; i < myList.length; i++ )
	{
		printf ( "'%.*s' ", myList[i] );
	}
	for ( int i = 0; i < yourList.length; i++ )
	{
		printf ( "'%.*s' ", yourList[i] );
	}

	/* Have to concatenate the 2 Lists, implement the 
	unique( string[] inList ) function and then display the lists to
	the screen */
}

void campItems ( string inFile, inout string[] inList )
{
	printf("I am in the function now\n\n");
	
	File	tempFile;
	tempFile.open(inFile);
	
	printf("After file declaration and opening");

	while ( !tempFile.eof() )
	{
		inList[inList.length - 1] = tempFile.readLine();
	}
}

It never reaches the line: printf("After file declaration and opening");
Bot only that but it send the computer into a major memory leak ie. used up all 512mB of physical memory and 
then 1.3gB of virtual ram before I caught it.  Something is severly stuffed big time here, is it just me or has 
anyone else has similar problems!  Argh!
June 07, 2002
Re: Problem with File streams
"Ryan Michel" <ryan@michel.com.au> wrote in message
news:1103_1023439083@news.digitalmars.com...

> File tempFile;
> tempFile.open(inFile);

Err... and where is "tempFile = new File" ???
Top | Discussion index | About this forum | D home