Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [Vb.NET2005]Proprietà Split

    Ciao a tutti...
    tramite metodo stramreader apro un file .ini...
    da questo file devo estrapolare dei dati...
    vi allego l'esempio :
    [ODBC 32 bit Data Sources]
    Database di Microsoft Access=Microsoft Access Driver (*.mdb) (32 bit)
    File di Microsoft Excel=Microsoft Excel Driver (*.xls) (32 bit)
    File di dBASE=Microsoft dBase Driver (*.dbf) (32 bit)
    micros=Adaptive Server Anywhere 9.0 (32 bit)
    microstest=Adaptive Server Anywhere 9.0 (32 bit)
    [Database di Microsoft Access]
    Driver32=C:\WINDOWS\System32\odbcjt32.dll
    [File di Microsoft Excel]
    Driver32=C:\WINDOWS\System32\odbcjt32.dll
    [File di dBASE]
    Driver32=C:\WINDOWS\System32\odbcjt32.dll
    [micros]
    Driver32=C:\Sybase\SQL Anywhere 9\win32\dbodbc9.dll
    [microstest]
    Driver32=C:\Sybase\SQL Anywhere 9\win32\dbodbc9.dll


    io devo estrapolare tramite parametro e successivo split i dati tra parentesi [ dato ]
    [Database di Microsoft Access]
    [File di Microsoft Excel]
    [File di dBASE] etc etc...

    ho usato questa funzione... che mi funziona parzialmente :
    Dim ParamSeparator() As Char = {CChar("[ ]"), CChar("]")}
    Dim dsnArray As String() = readfile.Split(ParamSeparator)

    il risultato di questa é :
    giusto : ODBC 32 bit Data Sources
    sbagliato : Database di Microsoft Access=Microsoft Access Driver (*.mdb) (32 bit)
    giusto: Database di Microsoft Access
    sbagliato : Driver32=C:\WINDOWS\System32\odbcjt32.dll
    giusto : File di Microsoft Excel]
    sbagliato : Driver32=C:\WINDOWS\System32\odbcjt32.dll
    giusto : File di dBASE
    sbagliato : Driver32=C:\WINDOWS\System32\odbcjt32.dll
    giusto : micros
    sbagliato : Driver32=C:\Sybase\SQL Anywhere 9\win32\dbodbc9.dll
    giusto :microstest
    sbagliato : Driver32=C:\Sybase\SQL Anywhere 9\win32\dbodbc9.dll

    a me servono solamente i dati compresi.. ma tramite il codice sopra..mi viene riportata anche la stringa successiva ai []...

    mi sapete dare un aiuto?
    grazie

  2. #2
    possibile che nessuno riesce a darmi un aiuto?

  3. #3
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Ciao, ma non fai prima a leggerti riga per riga e controlli il primo ([) e l'ultimo (]) carattere della riga? In base a questo ti estrapoli la riga senza il carattere iniziale e finale.
    Jupy

  4. #4
    utilizzando un ciclo for??

  5. #5
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    no, apri il file in lettura sequenziale, poi lo scorri con un ciclo leggendo riga per riga fintanto che non arrivi alla fine..
    Jupy

  6. #6
    ok... ho capito un po' quello che intendi..
    hai qualche esempio a portata di mano da farmi vedere...??

    sai è da poco che ho iniziato a programmare in vb.. mi manca ancora qualche nozione

    te vansi un spriss

  7. #7
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Ciao, in base al linguaggio, e versione, che hai detto di usare, questo è il codice di esempio:
    codice:
    Private Function CheckStringa(ByVal tmp As String) As String
        Dim s As String = ""
        If tmp.Length > 0 Then
            If tmp.Chars(0) = "["c And tmp.Chars(tmp.Length - 1) = "]"c Then
                s = tmp.Substring(1, tmp.Length - 2)
            End If
        End If
        Return s
    End Function
    
    'metti questo codice all'interto dell'evento click di un pulsante.. e il gioco è fatto.. :D 
    Dim strRiga As String = ""
    Using myFile As New IO.StreamReader("C:\prova.ini")
        Do Until myFile.EndOfStream
            strRiga = CheckStringa(myFile.ReadLine)
            If Not strRiga = "" Then
                MessageBox.Show(strRiga)
            End If
        Loop
    End Using
    bono lo spriss...
    Jupy

  8. #8
    grazie mille per l'aiuto...
    piccolo problema... nn mi fa vedere na mazza...

    ho usato un openfiledialog per selezionare il file .ini...
    al evento ok dell' o.fil.dia ho associato appunto il codice che mi hai suggerito...
    ti posto tutto...

    Public Class SelectDatabase


    Private Function CheckStringa(ByVal tmp As String) As String
    Dim s As String = ""
    If tmp.Length > 0 Then
    If tmp.Chars(0) = "["c And tmp.Chars(tmp.Length - 1) = "]"c Then
    End If
    End If
    Return s
    End Function
    Private Sub btnNamefile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNamefile.Click
    If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    txtNamefile.Text = OpenFileDialog1.FileName

    Dim strRiga As String = ""
    Using myFile As New IO.StreamReader(OpenFileDialog1.FileName)
    Do Until myFile.EndOfStream
    strRiga = CheckStringa(myFile.ReadLine)
    If Not strRiga = "" Then
    txtRisultato.Text = strRiga
    MessageBox.Show(strRiga)
    End If
    Loop
    End Using

    End If
    End Sub
    End Class

  9. #9

  10. #10
    Utente di HTML.it L'avatar di Jupy64
    Registrato dal
    Sep 2004
    Messaggi
    1,151
    Ciao, è normale che non ti fa vedere niente.. hai ricopiato male la funzione di controllo CheckStringa.. esattamente ti manca questa parte: s = tmp.Substring(1, tmp.Length - 2)
    Jupy

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.