看你的代码是只有打印一行啊。循环都没有你想打印几行?
int filehandle1=FileOpen("filename.csv",FILE_CSV|FILE_READ|FILE_WRITE); if(filehandle1!=INVALID_HANDLE) { if(FileSeek(filehandle1,0,SEEK_END)) { FileWrite(filehandle1,close[0]); } else Print("FileSeek error,",GetLastError()); } FileClose(filehandle1);
我用的是MT4平台,只能用MT4编。
循环不需要的吧,我是打印加载EA后的每一个CLOSE[0].不是以往K线的。我现在的问题是我里面只有一行,这一行在不断的替换,替换成最新的数据,我需要的是插入新数据,不是替换老数据。
zbb:
一样的,在写入前将文件指针移到最后,每次从文件结尾开始写
我用的是MT4平台,只能用MT4编。
循环不需要的吧,我是打印加载EA后的每一个CLOSE[0].不是以往K线的。我现在的问题是我里面只有一行,这一行在不断的替换,替换成最新的数据,我需要的是插入新数据,不是替换老数据。
zbb:
那你只需在退出的时候关闭文件句柄就行了,你这样的代码执行效率很低,不断的创建句柄,关闭句柄,你可以初始化时创建一次句柄就行了。
我用的是MT4平台,只能用MT4编。
循环不需要的吧,我是打印加载EA后的每一个CLOSE[0].不是以往K线的。我现在的问题是我里面只有一行,这一行在不断的替换,替换成最新的数据,我需要的是插入新数据,不是替换老数据。
handle=FileOpen(商品名称, FILE_CSV|FILE_READ|FILE_WRITE, ';');
if(handle>0)
{
FileWrite(handle, close[0]);
FileClose(handle);
}
我的目的是打印到文件,但是我的TXT文本里总是只有一句话,是不是每打印一句就把原先的数据替换删掉了?