Alynne Saraiva Postado Novembro 13, 2007 Denunciar Share Postado Novembro 13, 2007 Tow com um arquivo q é composto e várias strings, importei os dados paa o pograma usando isso:#include <iostream>#include <fstream>#include <string>#include <sstream>using namespace std;int main () { string line; ifstream myfile("dados.txt"); if (myfile.is_open()) { while (!myfile.eof()) { getline (myfile,line); cout << line <<endl; } myfile.close(); }}Agora tenho o seguinte poblema... cada posição da string tem um significado.Ex.:130824173900010500028601000000601700000000 000951031 F208598 CAT 250920072510200700000272580000005000000+0000000000000000139912500001399125as duas primeiras posições referen-se ao tipo de função (13=leitura)as próximas 14 são o CNPJ da empesa (082417390001050)as próximas 8 são o SIC....e assim por diante...Se alguém puder me ajudar eu agradeço.Tow usando o DEV-C++ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kandrade Postado Novembro 13, 2007 Denunciar Share Postado Novembro 13, 2007 Voce pode usar substr e depois se necessário converter o valor para inteiro.leia isso:http://www.cplusplus.com/reference/string/string/substr.htmlprotótipo:string substr ( size_t pos = 0, size_t n = npos ) const;size_t pos = 0 -> começa emsize_t n = npos -> tamanhoExemplo:string str="130824173900010500028601000000601700000000 000951031 F208598 CAT";tipo = str.substr (1,2); Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Alynne Saraiva
Tow com um arquivo q é composto e várias strings, importei os dados paa o pograma usando isso:
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
using namespace std;
int main () {
string line;
ifstream myfile("dados.txt");
if (myfile.is_open())
{
while (!myfile.eof())
{
getline (myfile,line);
cout << line <<endl;
}
myfile.close();
}
}
Agora tenho o seguinte poblema... cada posição da string tem um significado.
Ex.:
130824173900010500028601000000601700000000 000951031 F208598 CAT 250920072510200700000272580000005000000+0000000000000000139912500001399125
as duas primeiras posições referen-se ao tipo de função (13=leitura)
as próximas 14 são o CNPJ da empesa (082417390001050)
as próximas 8 são o SIC....
e assim por diante...
Se alguém puder me ajudar eu agradeço.
Tow usando o DEV-C++
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.