|
|
|
Как работать с файлом как с потоком?
|
|||
|---|---|---|---|
|
#18+
Народ! подскажите, пожалуйста, как в VC 6 работать с файлом как с потоком? 1) Что надо #include 2) Какую либу подключить (если надо) 3) Как открыть/закрыть А то не зная названий функций чего-то не везет с поиском. Дальше сам накопаю. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 11:22 |
|
||
|
Как работать с файлом как с потоком?
|
|||
|---|---|---|---|
|
#18+
GradientНарод! подскажите, пожалуйста, как в VC 6 работать с файлом как с потоком? 1) Что надо #include 2) Какую либу подключить (если надо) 3) Как открыть/закрыть А то не зная названий функций чего-то не везет с поиском. Дальше сам накопаю. Заранее спасибо. Примерно так: [src c++] #include <fcntl.h> #include <io.h> #include <conio.h> #include <stdio.h> int main(int argc, char* argv[]) { // TODO: code your application's behavior here. FILE *stream; long BitesIsRead; int hr; char *p,*r; char *fld[30]; char buffer[1024]; char delim[]="\t|,\n"; ZeroMemory((void *)buffer,1024); ZeroMemory((void *)&fld,sizeof(fld)); if((stream=fopen("D:\\temp\\25_in.out","rb"))!=NULL) { int j=0; while(fgets(buffer,sizeof(buffer),stream)!=NULL) { j++; int i=1; fld[0]=buffer; r=buffer; BitesIsRead=strlen(buffer); for(hr=0;hr<strlen(delim);hr++) { while((p=strchr(r,delim[hr]))!=NULL) { *p='\0'; fld[i++]=++p; r=p; } } for (i;i<30;i++) fld =NULL; ZeroMemory((void *)buffer,1024); ZeroMemory((void *)&myBill,sizeof(myBill)); ZeroMemory((void *)&fld,sizeof(fld)); } if((hr=fclose(stream))==EOF) { BitesIsRead=GetLastError(); cout<<"Last Error code is:"<<BitesIsRead<<endl; getch(); } } else { cout<<"Sorry! File Opening is failed!"<<endl; BitesIsRead=GetLastError(); cout<<"Last Error code is:"<<BitesIsRead<<endl; getch(); } getch(); return 0; } [/src c++] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 12:40 |
|
||
|
Как работать с файлом как с потоком?
|
|||
|---|---|---|---|
|
#18+
GradientНарод! подскажите, пожалуйста, как в VC 6 работать с файлом как с потоком? 1) Что надо #include 2) Какую либу подключить (если надо) 3) Как открыть/закрыть А то не зная названий функций чего-то не везет с поиском. Дальше сам накопаю. Заранее спасибо. 1) fstream 2) это стандартная библиотека, т.е. обычно дополнительных телодвижений не требуется 3) объекты ifstream (ввод) или ofstream (вывод). открытие либо на конструкторе, либо open. Закрытие либо close, либо сами при выходе из блока. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. g++ test.cpp ./a.out test.cpp ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2006, 12:42 |
|
||
|
|

start [/forum/topic.php?fid=57&gotonew=1&tid=2032082]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
171ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 507ms |

| 0 / 0 |
