Ir ao conteúdo
  • Cadastre-se

Ajuda com rotina para editar arquivo


zof

Posts recomendados

Bom dia,

Estou tentando criar uma rotina em "C" para modificar um arquivo "TXT", porém meu conhecimento em "C" é limitado.

Bem então por que estou usando "C" e não outra linguagem digamos mai "fácil"?, é que estou fazendo isso em um AS400

e as ferramentas que tenho são "C" e "RPG", "RPG" não tenho a minima ideia de como é, "C" tenho (minimo, mas tenho) algum conhecimento.

A rotina até funciona, o problema é que na hora de gravar o parametro no arq. grava tudo estranho.

Abaixo estão o link de onde tirei os exemplos para adaptar o códiga, o comando usado, o código e o arquivo resultante (2ºlinha).

Se alguem puder me dar uma ajuda fico muito grato.

Abraço e grato pela ajuda e atençao de todos.

http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/index.jsp?topic=/com.ibm.etools.iseries.langref.doc/rzan5mst233.htm

CALL PGM(EDSON/TESTEA) PARM('PUT GOGZ/ALGABRP1X1 ALGABRP1X1.TXT')

*************** Beginning of data *************************

#include <stdio.h>

#include <stdlib.h>

#include <recio.h>

#include <xxfdbk.h>

int main(int argc,char *argv[]) {

_RFILE *in;

_XXOPFB_T *opfb;

_XXIOFB_T *iofb;

char *put = argv[1];

/* Open the file for processing in keyed sequence. */

/* File is created with the default access path. */

if ((in = _Ropen("EDSON/QCSRC(FTPTXT)", "rr+")) == NULL)

{

printf("Open failed\n");

exit(1);

};

opfb = _Ropnfbk ( in );

/* Update the first record in the keyed sequence.The function */

/* _Rlocate locks the record. */

_Rlocate(in, NULL, 0, __FIRST);

_Rlocate(in, NULL, 0, __NEXT);

_Rupdate(in, put , 50);

printf(put);

/* Force the end of data. ----------------------------------- */

_Rfeod(in);

_Rclose(in);

return 0;

}

****************** End of data ****************************

FMT ** ...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5

*************** Beginning of data *****************

0001.00 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

0002.00 ABRP1X1 ALGABRP1X1.TXT P1X1.TXT') o

0003.00 cccccccccccccccccccccccccccccccccccccccccccccccccc

****************** End of data ********************

Link para o comentário
Compartilhar em outros sites

Boa Tarde,

Cara na verdade estou querendo automatizar o envio de arquivos via ftp. Ai tenho que gravar a linha que tem o comando PUT para depois submeter o arquivo. o que eu estou querendo gravar é uma string do tipo:

"PUT GOGZ/ALGABRP1X1 ALGABRP1X1.TXT"

é isso...será que ainda ta confuso?...não sei se melhorou...

Grato pela ajuda...

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...