Discussione chiusa
Visualizzazione dei risultati da 1 a 6 su 6

Prendere parte di testo da un file txt

  1. #1
    M4ndr4k377 non  in linea Scolaretto
    Ciao a tutti spero possiate aiutarmi...

    Devo leggere un file txt ma prendendo solo una parte di codice in modo da metterla su una combobox, faccio un esempio:

    ciao/come va.txt
    ciao/come va.bat
    ciao/tutto ok.txt
    ciao/tutto ok.bat
    ciao/ok.txt
    ciao/ok.bat
    qui pu esserci un'altro testo
    e cosi via....

    da questo file dovrei cercare tutte le righe con la scritta ciao/ ma devo prendere solo il filename.txt senza estensione e metterlo in una combobox. (ma se guardate bene ci sono anche gli stessi filename ma con estensione diverso) ma a me serve solo le righe con estensione txt

    Se non sono stato abbastanza chiaro chiedete pure.

  2. #2
    Cominciamo dall'inizio ... scrivi il codice per aprire il file in lettura e leggere linea dopo linea. Dopo si vede ...
    ℹ️ Leggi di pi su AntonioG ...

  3. #3
    M4ndr4k377 non  in linea Scolaretto
    Ciao...
    Io per leggere un file faccio cosi

    Imports System.IO
    Public Class Form1
    
        Dim leggi As System.IO.StreamReader
        Dim letto As String
        Dim lettoSplit() As String
    
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            leggi = System.IO.File.OpenText(Application.StartupPath & "\file.txt")
            letto = leggi.ReadToEnd
            leggi.Close()
            lettoSplit = Split(letto, vbCrLf)
            For r = 0 To UBound(lettoSplit)
                ComboBox1.Items.Add(lettoSplit(r))
            Next
        End Sub
    
    End Class
    
    Per non so come andare avanti per far quello che ho postato all'inizio...
    Ultima modifica di AntonioG; 08-03-2014 22:24  Motivo: Usa i tag CODE per il codice ...

  4. #4
    Ok, partendo dal tuo codice, nella parte finale

            For r = 0 To UBound(lettoSplit)
                ComboBox1.Items.Add(lettoSplit(r))
            Next
    
    hai tutte le righe che dovrai trattare.

    A questo punto, ogni singolo elemento

    lettoSplit(r)

    una delle righe che devi gestire.

    Se inizia con

    ciao/

    ovvero

    If lettoSplit(r).StartsWith("ciao\") Then

    allora usa ancora lo Split con il carattere "\" per dividere le due parti e aggiungi solo la seconda.

    Per informazioni sul metodo StartsWith studia questo
    http://msdn.microsoft.com/it-it/libr...v=vs.110).aspx
    ℹ️ Leggi di pi su AntonioG ...

  5. #5
    M4ndr4k377 non  in linea Scolaretto
    Grazie per l'aiuto ci sono riuscito...
    Ora ho un'altro problema

    Creo un file bat usando questo codice:

    Dim cmd As String = IO.Path.GetPathRoot(Environment.GetFolderPath(Envi ronment.SpecialFolder.Windows)) & "Windows\System32\cmd.exe"
    scrivi = System.IO.File.CreateText(Application.StartupPath & "\prova\file.bat")
    scrivi.WriteLine("codice scritto")
    scrivi.WriteLine("ancora codice scritto" & Application.StartupPath & "\prova\" & ComboBox2.Text & ".exe")
    scrivi.Close()

    il file lo avvio cosi ma mi da errore

    System.Diagnostics.Process.Start(Application.Start upPath & "\prova\file.bat")

    ho provato anche cosi

    System.Diagnostics.Process.Start(cmd & " " & Application.StartupPath & "\prova\file.bat")

    oppure al posto di System.Diagnostics.Process.Start ho provato anche

    Process.Start
    Shell

    e ancora:

    Dim psi As New ProcessStartInfo(Application.StartupPath & "\prova\file.bat")
    psi.RedirectStandardError = True
    psi.RedirectStandardOutput = True
    psi.CreateNoWindow = False
    psi.WindowStyle = ProcessWindowStyle.Hidden
    psi.UseShellExecute = False
    Dim process As Process = process.Start(psi)

    La cosa strana se commento il codice di avvio del file bat me lo crea correttamente e se lo avvio cliccandoci 2 volte funziona correttamente
    ma se uso i codici che ho postato no.
    Come mai?

  6. #6
    NO M4ndr4k377. Un problema per ogni thread.

    Questo lo chiudo, aprine un altro con un titolo opportuno e per il codice non dimenticare i tag CODE.
    ℹ️ Leggi di pi su AntonioG ...

Discussione chiusa

Potrebbero interessarti anche ...

  1. [VB.Net 2012] Prendere una parte di immagine
    Da GarGia1960 nel forum Visual Basic .Net
    Risposte: 4
    Ultimo Post: 04-08-2013, 19:36
  2. Risposte: 14
    Ultimo Post: 19-01-2013, 00:35
  3. Separare e prendere la parte decimale di un numero.
    Da Louis nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 10-09-2009, 17:00
  4. prendere valore da file chiuso in dir sul server
    Da sal21 nel forum Microsoft Word
    Risposte: 1
    Ultimo Post: 21-07-2009, 11:42
  5. Risposte: 1
    Ultimo Post: 01-10-2007, 17:20