MasterDrive.it   
Vai indietro   MasterDrive.it > Software Development > Visual Basic .Net



Rispondi
 
Strumenti della discussione Modalità di visualizzazione
Vecchio 17-03-2010, 21:33   #1 (permalink)
Neofita della community

 
70 Messaggi

Headphone novizio della comunita' ( + 10 )
Array o simili???

Ciao a tutti...
con il mio progettino Vb.net porto su una variabile String il contenuto di un file di testo così formattato:

"Giovanni";"Rossi";33;"biondo";"Tiberio";"Bianchi" ;29;"biondo";"Luciano";"Bucci";44;"pelato"

Si noti che nell'ordine sono: nome;cognome;anni;capelli;nome;cognome;anni;capell i;nome;cognome;anni;capelli;

Come posso organizzarli meglio?
Nel senso, se volessi successivamente (per esempio) sapere l'età di Tiberio come faccio???

Pensavo a qualcosa tipo array ma, evidentemente più complesso, non so.
Mi aiutate?

Grazie

Headphone non è in linea   Bookmark and Share Rispondi quotando
Vecchio 17-03-2010, 22:14   #2 (permalink)
Collega della community

 L'avatar di Fix978

 
909 Messaggi

Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )
Sicuramente devi rivedere il metodo di salvataggio perchè così non va bene.

Potresti creare la Classe "persona", con le proprietà che ti interessano (nome,cognome,anni,capelli) e poi decidere se inserirli in una lista e serializzare la lista, oppure se serializzare direttamente come "persone" singole.

Successivamente, deserializzando, avrai a disposizione le "persone" cosi come le avrai salvate.
__________________
VB.Net: {Extension Methods} {Lambda Expressions}
HowTo: {Windows 7 - Installare il Sistema su C e la cartella Users su D}

è il metodo migliore per ringraziare chi ti è stato di aiuto.
Fix978 non è in linea   Bookmark and Share Rispondi quotando
Vecchio 18-03-2010, 13:06   #3 (permalink)
Neofita della community

 
70 Messaggi

Headphone novizio della comunita' ( + 10 )
Riesco a formattare così:
"Giovanni";"Rossi";33;"biondo";
"Tiberio";"Bianchi" ;29;"biondo";
"Luciano";"Bucci";44;"pelato"

(cioè ogni persona nella propria riga.....)
Meglio?
Consigli?
Headphone non è in linea   Bookmark and Share Rispondi quotando
Vecchio 18-03-2010, 14:05   #4 (permalink)
Collega della community

 L'avatar di Fix978

 
909 Messaggi

Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )
Già va meglio, però, se ho capito bene il tipo di progetto che vuoi realizzare, il file di testo non è idoneo.

Dovresti orientarti o sui DataBase, oppure sulle serializzazioni XML per i salvataggi dei dati.

Sorvolando momentaneamente il metodo di salvataggio, dovresti creare una "Classe Persona" - con le proprietà giuste - per associare i dati salvati.

Es:
codice:
Public Class Persona
 Public Nome As String
 Public Cognome As String
 Public Anni As UShort
 Public Capelli As String
 
 Public Sub New(ByVal _nome As String, ByVal _cognome As String, ByVal _anni As UShort, ByVal _capelli As String)
     Me.Nome = _nome
     Me.Cognome = _cognome
     Me.Anni = _anni
     Me.Capelli = _capelli
 End Sub
End Class
Poi associare i dati:
codice:
Dim p As New Persona("Nome", "Cognome", 0, "Colore")
Poi le persone potrai inserirle o in una matrice o in una lista.

Per effettuare delle ricerche in base ad una proprietà, o ti scorri l'intero contenitore effettuando un confronto, o utilizzi LINQ per effettuare una Query.
__________________
VB.Net: {Extension Methods} {Lambda Expressions}
HowTo: {Windows 7 - Installare il Sistema su C e la cartella Users su D}

è il metodo migliore per ringraziare chi ti è stato di aiuto.
Fix978 non è in linea   Bookmark and Share Rispondi quotando
Vecchio 18-03-2010, 14:28   #5 (permalink)
Collega della community

 L'avatar di bumm

 
830 Messaggi

bumm e' una persona affidabile ( + 250 )bumm e' una persona affidabile ( + 250 )bumm e' una persona affidabile ( + 250 )
Sono d'accordo con Fix978 ma sostituirei le variabili pubblici con le proprietà adeguate. es:

codice:
...
..
    Dim sName As String

    Public Property Name() As String
        Get
            Return sName
        End Get
        Set(ByVal value As String)
            sName = value
        End Set
    End Property
...
...
__________________
Se la risposta ti e stata utile


"HeloWorld.exe" 17 errors, 31 warnings.
bumm non è in linea   Bookmark and Share Rispondi quotando
Vecchio 18-03-2010, 19:30   #6 (permalink)
Neofita della community

 
70 Messaggi

Headphone novizio della comunita' ( + 10 )
Grazie per adesso, cercherò di farmi capire se riesco del perché quel file di testo è in quel modo:

Nella mia azienda c'è un DB Oracle con una miriade di dati (tutto questo su un server in uno stabilimento lontano dal mio).
Tramite Microsoft access, ho collegato le tabelle che mi servono e creato delle query. A questo punto, il risultato della query ho bisogno di leggerlo nello stabilimento distante, quindi creato una macro Access (sempre sullo stabilimento lontano) che esporta su file di testo sul server del mio stabilimento.
Se pensate che Access faccia esportazioni migliori, consigliatemi pure. Dal file che esporterò, avrò bisogno di fare delle analisi tipo (esempio banale sopra riportato):
Cerco Tibero e ottengo il Cognome, l'età, i capelli.... (naturalmente è un esempio)....
Il file di testo lo esportavo perché pensavo fosse più leggero....
Consigliatemi pure....
Grazie
Headphone non è in linea   Bookmark and Share Rispondi quotando
Vecchio 18-03-2010, 20:04   #7 (permalink)
Collega della community

 L'avatar di Fix978

 
909 Messaggi

Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )
Purtroppo non ho mai avuto a che fare con Oracle, però, facendo un ragionamento contorto, chissà se è possibile stabilire una VPN tra il tuo PC dello stabilimento A ed il PC dello stabilimento B (dove c'è oracle), e poi tentare di connettersi direttamente al DB per effettuare le Query.

Esiste la Classe OracleClient per effettuare le operazioni.

Quì ci vuole qualcuno che abbia avuto a che fare con Oracle e che sappia come poter creare la stringa di connessione per permettere il collegamento.

Appena ho 5 minuti vedo se trovo qualche info in rete.


@Bumm
si anche io sono un sostenitore delle Proprietà, però non cosi' estremista , considerando che non vi sono limitazioni da imporre ai valori, verifiche sulle assegnazioni o trattamento delle stesse prima della restituzione del valore, dichiarare una variabile pubblica o il suo equivalente come proprietà pubblica, è la stessa identica cosa.

Rimane, però, cosa buona e giusta, abituarsi a scrivere con le Proprietà anche in questi casi.
__________________
VB.Net: {Extension Methods} {Lambda Expressions}
HowTo: {Windows 7 - Installare il Sistema su C e la cartella Users su D}

è il metodo migliore per ringraziare chi ti è stato di aiuto.

Ultima modifica di Fix978 : 18-03-2010 a 20:09.
Fix978 non è in linea   Bookmark and Share Rispondi quotando
Vecchio 19-03-2010, 12:21   #8 (permalink)
Collega della community

 L'avatar di bumm

 
830 Messaggi

bumm e' una persona affidabile ( + 250 )bumm e' una persona affidabile ( + 250 )bumm e' una persona affidabile ( + 250 )
Quote:
@Bumm
si anche io sono un sostenitore delle Proprietà, però non cosi' estremista , considerando che non vi sono limitazioni da imporre ai valori, verifiche sulle assegnazioni o trattamento delle stesse prima della restituzione del valore, dichiarare una variabile pubblica o il suo equivalente come proprietà pubblica, è la stessa identica cosa.
[Offtopic]
beh, valuta anche il binding...
Perciò mi piace C#

codice:
public string Name{get;set;}
la dichiarazione e molto più leggibile... in questo caso il compilatore crea una variabile privata in automatico.
[/Offtopic]
__________________
Se la risposta ti e stata utile


"HeloWorld.exe" 17 errors, 31 warnings.
bumm non è in linea   Bookmark and Share Rispondi quotando
Vecchio 21-03-2010, 08:20   #9 (permalink)
Neofita della community

 
70 Messaggi

Headphone novizio della comunita' ( + 10 )
Grazie a tutti,
diciamo che ho optato per la soluzione media che mi consentiva anche di non sforzare troppo le mie misere capacità.
Esporto la query su un file Access nel mio stabilimento (un po' più pesante di un file di testo ma ho già provato che posso fare come mi pare)....
Grazie a tutti
Headphone non è in linea   Bookmark and Share Rispondi quotando
Vecchio 21-03-2010, 11:32   #10 (permalink)
Collega della community

 L'avatar di Fix978

 
909 Messaggi

Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )Fix978 e' un tipo da prendere in considerazione ( + 650 )
Senza voler insistere più di tanto, ho trovato questa discussione (LINK) dove un utente dice di essere riuscito a connettersi ad un DB Oracle Remoto tramite la creazione di un DSN di Sistema.

La cosa è, quindi, fattibile.

Giusto per conoscenza.

Se hai già risolto in altro modo, meglio così.
__________________
VB.Net: {Extension Methods} {Lambda Expressions}
HowTo: {Windows 7 - Installare il Sistema su C e la cartella Users su D}

è il metodo migliore per ringraziare chi ti è stato di aiuto.
Fix978 non è in linea   Bookmark and Share Rispondi quotando
Rispondi

Strumenti della discussione
Modalità di visualizzazione

Regole d'invio
Non puoi inserire discussioni
Non puoi inserire repliche
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è attivo
Le smilies sono attive
Il codice IMG è attivo
il codice HTML è disattivato
Trackbacks are attivo
Pingbacks are attivo
Refbacks are disattivato

Salto del forum


Tutti gli orari sono GMT +2. Attualmente sono le 09:47.


Powered by vBulletin versione 3.8.0
Copyright © 2000 - 2010, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.2.0

Valid XHTML 1.0 Transitional  Creative Commons License

Eccetto dove diversamente specificato, i contenuti pubblicati in questa comunità sono rilasciati sotto Licenza
Creative Commons Attribuzione-Non commerciale-Condividi allo stesso modo 2.5 Italia License.
La comunita' di MasterDrive.it non e' responsabile di eventuali imprecisioni presenti nelle pagine.