|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Aggiungere CR ad un file...
Sapete se esiste un comando o un programma in windows o Unix che mi permette di aggiungere ogni tot caratteri di un file il CR, in modo da visualizzarlo con un normale editor.
In pratica ho un file contenente le informazioni di una tabella di un database solamente il programma che mi crea questo file non aggiunge un CR a fine record e io mi ritrovo una stringa unica con tutti i record. Invece dovrei mettere poniamo ogni 80 caratteri il CR. Help! |
![]() |
![]() |
![]() |
#2 |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Neppure un comando in UNIX ??? eppure l'ho visto fare ....
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
se vuoi ti scrivo domani un programmeto x windows che lo fa....
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
In C...
#include <stdio.h> #include <file.h> #define ACAPO 80 int main(int argc, char *argv[]) { FILE *f, *f2; int num; char buffer[ACAPO+1]; if(argc < 3) { printf("Usage : AddCR srcFile destFile\n"); return 1; } f = fopen(argv[1], "rt"); f2 = fopen(argv[2], "wt"); if(!f) { printf("Error openining source file\n"); return 1; } if(!f2) { printf("Error openining destinantion file\n"); return 1; } do { num = fread(buffer, 1, ACAPO, f); buffer[num] = "\n"; fwrite(buffer, 1, num+1, f2); } while (num == ACAPO && !feof(f)); fclose(f); fclose(f2); return 0; } |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Attento che se lo compili sotto Unix e lo applichi al file, se lo riapri sotto Windows vedrai sempre tutto su una unica linea (Unix associa a /n solo il carattere ASCII 0x0A, mentre DOS/Windows associa a /n i caratteri 0x0A e 0x0D, cioè vuole anche un ritorno carrello per andare a capo)...
Se fosse solo il problema del ritorno carrello basta aprire il file con EDIT e poi salvarlo...e dopo lo potrai vedere bene anche con altri editor... Ah, ovviamente se vuoi modificare il numero di caratteri dopo cui mandare a capo devi modificare il valore della costante ACAPO nel sorgente... |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
|
Quote:
eh eh eh,:o come il buon vecchio Amiga ![]() |
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ah...ovviamente tutto non provato e scritto da zero...
A voi l'eventuale debug ![]() |
![]() |
![]() |
![]() |
#8 |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Grazie Cionci, ma io cercavo qualcosa di già esistente... eventualmente proverò il programmetto...
|
![]() |
![]() |
![]() |
#9 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
|
|
![]() |
![]() |
![]() |
#10 |
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
eh che bo' fa'.
li abituate alla pappa pronta ... ![]() tra l'altro ti ha dato anche del programmetto ... ![]() |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Eheh...allora gli ci lascio il bug
![]() |
![]() |
![]() |
![]() |
#12 |
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
astutoooo
![]() P.S. mi ricordi quei programmi per il Totocalcio (e altri ...) con la protezione cattiva per cui sembravano funzionare correttamente ma sparavano colonne a ca++o. (poi magari vincevi con quelle ![]() |
![]() |
![]() |
![]() |
#13 |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Scusa Cionci, non volevo ossere offensivo ..... il problema è che mi qui al lavoro non ho montato il C, per cui avrei dei problemi a fare il programma, testarlo e debbuggarlo
![]() ![]() |
![]() |
![]() |
![]() |
#14 |
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
paura del moderatorando eh
![]() |
![]() |
![]() |
![]() |
#15 | |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Quote:
![]() ![]() |
|
![]() |
![]() |
![]() |
#16 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
|
|
![]() |
![]() |
![]() |
#17 |
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
tel chì cotto e mangiato:
Codice:
Sub dani(NumCar) Open "c:\temp\prova1.txt" For Input As #1 Open "c:\temp\prova2.txt" For Output As #2 NumCar1 = LOF(1) For i% = 1 To Int(NumCar1 / NumCar) a$ = Input(NumCar, #1) Print #2, a$ & Chr$(10) Next i% a$ = Input(NumCar1 Mod NumCar, #1) Print #2, a$ & Chr$(10) Close End Sub prevedo di potere ridurre le istruzioni a diciamo 1/3 (da 10 a 3) ![]() |
![]() |
![]() |
![]() |
#18 |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Il problema che questo file devo importarlo in excel, solo che quando lo apro lo vede come un unica stringa. Ecco la necessità di dividerlo ogni 80 caratteri (lunghezza del record).
Grazie A2000 della routine. |
![]() |
![]() |
![]() |
#19 |
Bannato
Iscritto dal: Jan 2001
Messaggi: 1976
|
ma schiusa, amore mio, bello di papà, ma dillo subito che ti serve in excel.
allora è moooolto più semplice. se vuoi puoi mandarmi un frammento di un file di esempio e te lo dimostro OnAction ![]() |
![]() |
![]() |
![]() |
#20 | |
Bannato
Iscritto dal: Nov 2000
Città: mi
Messaggi: 18790
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:56.