Come si scrive nel file txt

Ciao a tutti, come da titolo vorrei sapere come avviene la scrittura nel file txt, non chiedo come si apre il file ecc, quello c'è nel reference e mi pare di averlo capito. Volevo sapere se la scrittura deve essere tutta in fila oppure se io mi posiziono nella seconda riga lui scrive da li in poi, poi mi posizione sulla terza e scrive (oppure vado a capo).

Mi spiego meglio, io devo fare un file txt dove mi mette un indice (ad esempio il momento, data e ora) e di seguito una seria di dati letti dai sensori, poi una seconda volta e una terza. Quindi questo devo leggerlo attraverso Xojo (simile a visual basic ma con compatibilità anche su Mac/Linux ecc). Ogni volta che finisce i dati, e quindi deve mettere il nuovo indice, vorrei andasse a capo. E' vero che per la lettura mi basterebbe mettere un semplice codice indicatore di fine blocco, ma volevo farlo più ordinato in modo che fosse leggibile anche 'a occhio'.

Le mie due domande sono quindi queste:

1) è possibile andare a capo? 2) è possibile selezionare la posizione (riga e colonna) da cui iniziare a scrivere?

Scusate se faccio domande anche stupide, ma sono un po' stretto coi tempi e ste attendendo che mi arrivi la shield quindi non posso fare prove, ma per evitare di 'perdere' tempo vorrei iniziare a crearmi l'interfaccia sul computer.

Grazie mille!

Mancano alcune informazioni primarie... Vuoi fare ciò usando la SD card ? o tramite che shield ?

Di quale shield parli? Hai il link del prodotto? Oppure intendi il semplice Arduino?

Avete ragione, scusate. Ho acquistato una Shield Wifi con l'SD integrato

http://www.emmeshop.it/product.php?id_product=765

mastraa: 1) è possibile andare a capo?

A seconda del SO su cui leggerai il file, la sequenza di "a capo" varia. Ma in linea di massima un carattere '\n' dovrebbe essere sufficiente se poi il file lo leggi da un programma ed interpreti tu quello che leggi.

2) è possibile selezionare la posizione (riga e colonna) da cui iniziare a scrivere?

Anche qui potresti spedire il carattere '\t' che inserisce un segno di tabulazione.

Dai un´occhiata qui prima di cominciare:

http://arduino.cc/en/Reference/SD

Se non ho capito male quindi io inserisco dei caratteri spia che poi faccio interpretare al mio file come 'vai a capo' o 'spazio' di Visual Basic ad esempio (in realtà uso Xojo, ma dovrebbe essere identico), dico bene?

Non sono caratteri spia, sono i codici ASCII veri di caratteri speciali. Se metti un ‘\t’, ASCII 9, qualunque editor te lo vede come TAB.

Si chiamano "sequenze di escape" --> http://msdn.microsoft.com/it-it/library/h21280bw.aspx --> http://it.wikipedia.org/wiki/C_(linguaggio)#Sequenze_di_escape

PaoloP: Si chiamano "sequenze di escape"

perché 30/40 anni fa erano immessi su terminali (non su computer) con l'ausilio del tasto escape. ;) Che oggi ormai non si sa più a che serve, se non come spesso "rimando" del pulsante grafico "annulla" su molte interfacce grafiche :stuck_out_tongue_closed_eyes:

Tu lo dici.... Io alle poste e in banca vedo ancora tantissime emulazioni 3270. :fearful: :fearful:

Ok ok perfetto, conosco i due escape, li ho usati per php. Avevo capito male, pensavo che qui non ci fossero e avrei potuto 'emulare' la situazione personalmente.

Ok perfetto quindi '/n' a capo e '/t' spazio giusto?

PaoloP: Tu lo dici.... Io alle poste e in banca vedo ancora tantissime emulazioni 3270. :fearful: :fearful:

Oppure programmi scritti ancora in COBOL come quelli dietro ai bancomat ;)

mastraa: Ok perfetto quindi '/n' a capo e '/t' spazio giusto?

No. La barra retroversa, questa -> \ Quindi \t e NON /t :P

OT ma il cobol perchè viene ancora oggi usato nei circuiti bancari ? Sono così pigri da non convertire le operazioni in linguaggi più moderni o c'è qualche altro motivo ?

Più che altro \t è di tabulazione, lo spazio è Il normale " ".

anerDev: ... ma il cobol perchè viene ancora oggi usato nei circuiti bancari ? Sono così pigri da non convertire le operazioni in linguaggi più moderni o c'è qualche altro motivo ?

Ma tu hai minimamente una pallida idea dei "milioni e milioni" di linee di codice scritte in Cobol che attualmente girano in quei settori ??? Hai idea degli [u]enormi costi di conversione[/u], dei tempi, del necessario debug, ecc. ecc.. che la cosa comporterebbe ??? :astonished: E per cosa poi ??? Mah ...

Guglielmo

Sì, difatti. Finché tutto va, perché cambiare le cose? Alla fine si tratta di un lavoro immane.

leo72:
… Alla fine si tratta di un lavoro immane.

… e non esente da problemi seri da risolvere con altri linguaggi !

Chi conosce il Cobol sa che, ad esempio, la precisione “fixed point” (normalmente usata in ambito finanziario), arriva MINIMO a 18 digit, ma su IBM anche a 30 digit !!! Per non parlare poi di tante altre belle cosine che il Cobol permette e che non sono banali da portare in altri linguaggi.

Insomma … per ogni problema bisogna usare la soluzione ADATTA (… senza tanto inutile filosofeggiare) e, per problematiche Business Oriented, il Cobol è ancora imbattibile (… non per nulla MicroFocus ne fa il suo cavallo di battaglia). :wink:

Guglielmo

PS: sono programmatore COBOL, 20 anni fa feci un corso per impararlo :stuck_out_tongue_closed_eyes: