Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > полученние данных из потока


Автор: prolight 2.7.2008, 21:05
как записать в .txt данные я с горем пополам разобрался,как эти данные оттуда взять?пожалуйста напишите полностью код с библиотеками,и т.п.спасибо заранее.

Автор: compiler91 2.7.2008, 21:29
один из примеров:
Код

// print the content of a text file.
#include <iostream>
#include <fstream>
using namespace std;

int main () {

  ifstream infile;

  infile.open ("test.txt", ifstream::in);

  while (infile.good())
    cout << (char) infile.get();

  infile.close();

  return 0;
}


источник ___http://www.cplusplus.com/reference/iostream/ifstream/open.html

Автор: prolight 2.7.2008, 21:37
это только вывод данных(но всё равно спасибо),надо чтобы можно было определённый кусок .txt записать в определённую строчку.

Автор: NebelDT 30.9.2008, 09:18
Ну вот тебе пример! smile 
Код

#include <stdio.h >
#include <string.h>
#include <stdlib.h>
main()
{
int P=0,L=0;
char NAZ[22],STR[4],FAM[10],CDD[2],TIR[7];
struct COMP{
char NAZ[22];char STR[4];char FAM[10];
char CDD[2]; char TIR[7];
};
COMP X;
FILE *one;
if((one=fopen("MUSIC.txt", "w+"))==NULL){
  puts("\n(((OSHIBKA)))\n");
  fflush(stdin);
  getchar();
  return (0);
}
puts("(((FAYL MUSIC.txt OPEN)))\n");
puts("(((VIBERITE PORAMETR POISKA[1,2,3,4 ILI 5])))\n");
scanf("%d",&P);
if(P==1){scanf("%22s",&NAZ);}
if(P==2){scanf("%4s",&STR); }
if(P==3){scanf("%10s",&FAM);}
if(P==4){scanf("%2s",&CDD); }
if(P==5){scanf("%7s",&TIR); }
while(!feof(one)){
     fscanf(one,"%22s",&X.NAZ);
     if(strcmp(X.NAZ,NAZ)==0){L++;}
     fscanf(one,"%4s",&X.STR);
     if(strcmp(X.STR,STR)==0){L++;}
     fscanf(one,"%10s",&X.FAM);
     if(strcmp(X.FAM,FAM)==0){L++;}
     fscanf(one,"%2s",&X.CDD);
     if(strcmp(X.CDD,CDD)==0){L++;}
     fscanf(one,"%7s",&X.TIR);
     if(strcmp(X.TIR,TIR)==0){L++;}
if(L==1){
printf("%22s%4s%10s%2s%7s\n",X.NAZ,X.STR,X.FAM,X.CDD,X.TIR);L=0;}
fprintf(one,"%22s%4s%10s%2s%7s\n",X.NAZ,X.STR,X.FAM,X.CDD,X.TIR);
}
fclose(one);
fflush(stdin);
getchar();
return(0);
}     


Код

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
main()
{
char CHA[4]="133",CHD[3]="60";
struct COMP{
char MOD[23];char CEN[5];char MAS[4 ];
char RAS[15];char CHA[4];char OZU[4 ];
char DIS[5] ;char VID[2];char PIC[10];
char CHD[3] ;char HDD[6];           };
COMP XXX;
FILE *one,*two;
if((one=fopen("NOTE.txt", "r"))==NULL){
  puts("\n(((OSHIBKA)))\n");
  fflush(stdin);
  getchar();
  return (0);
}
puts("(((FAYL NOTE.txt OPEN)))");
two=fopen("NOTENEW.txt","w");
while(!feof(one)){
     fscanf(one,"%23s",&XXX.MOD);
     fscanf(one,"%5s", &XXX.CEN);
     fscanf(one,"%4s", &XXX.MAS);
     fscanf(one,"%15s",&XXX.RAS);
     fscanf(one,"%4s", &XXX.CHA);
     fscanf(one,"%4s", &XXX.OZU);
     fscanf(one,"%5s", &XXX.DIS);
     fscanf(one,"%2s", &XXX.VID);
     fscanf(one,"%10s",&XXX.PIC);
     fscanf(one,"%3s", &XXX.CHD);
     fscanf(one,"%6s", &XXX.HDD);
if(strcmp(XXX.CHA,CHA)==0&&strcmp(XXX.CHD,CHD)!=0){
     fprintf(two,"%23s",XXX.MOD);
     fprintf(two,"%5s", XXX.CEN);
     fprintf(two,"%4s", XXX.MAS);
     fprintf(two,"%15s",XXX.RAS);
     fprintf(two,"%4s", XXX.CHA);
     fprintf(two,"%4s", XXX.OZU);
     fprintf(two,"%5s", XXX.DIS);
     fprintf(two,"%2s", XXX.VID);
     fprintf(two,"%10s",XXX.PIC);
     fprintf(two,"%3s", XXX.CHD);
     fprintf(two,"%6s\n",XXX.HDD);
}}
fclose(one);
fclose(two);
fflush(stdin);
getchar();
return(0);
}



Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)