+ Rispondi al messaggio
Pagina 2 di 4 primaprima 1234 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 32

Estrazione caratteri da una stringa

  1. #11
    ljt
    ljt non  in linea Scolaretto
    Quote Originariamente inviato da patel45 Visualizza il messaggio
    mettilo su dropbox o simili e posta il link
    Grazie Patel, ecco qua il file:

    https://www.dropbox.com/s/ra9tuvovql...lenco.txt?dl=0

  2. #12
    Con il file che hai mandato e il codice che ti ho suggerito

            Dim elenco As String = System.IO.File.ReadAllText( "elenco.txt" )
            Dim v() As String = Strings.Split(elenco, ":")
            For Each s As String In v
                If s.Contains("power") Then
                    Console.WriteLine(s.Trim.Substring(0, s.IndexOf(Environment.NewLine)))
                End If
            Next
    
    ottengo l'elenco corretto.
    ℹ️ Leggi di pi su AntonioG ...

  3. #13
    patel45 non  in linea Scolaretto
    confermo, anche a me funziona, per vedo la scritta Linux, dovresti spiegare meglio da dove proviene la stringa in questione

  4. #14
    linuxpc

    il nome di uno dei pc
    ℹ️ Leggi di pi su AntonioG ...

  5. #15
    ljt
    ljt non  in linea Scolaretto
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    Con il file che hai mandato e il codice che ti ho suggerito

            Dim elenco As String = System.IO.File.ReadAllText( "elenco.txt" )
            Dim v() As String = Strings.Split(elenco, ":")
            For Each s As String In v
                If s.Contains("power") Then
                    Console.WriteLine(s.Trim.Substring(0, s.IndexOf(Environment.NewLine)))
                End If
            Next
    
    ottengo l'elenco corretto.
    Grazie AntonioG, funziona alla grande!!!.
    L'ultimo dubbio, se concesso .
    Ho modificato il codice perch vorrei riprendere l'elenco non da un file ma direttamente dal comando che genera la lista:
    Ho provato a modificare il codice nel seguente modo:
                Dim elenco As String = cmd.Result.ToString
                Dim v() As String = Strings.Split(elenco, ":")
                For Each s As String In v
                    If s.Contains("power") Then
                        Console.WriteLine(s.Trim.Substring(0, s.IndexOf(Environment.NewLine)))
                    End If
                Next
    
    Dove cmd.result.string contiene la stringa identica contenuta nel file elenco.txt
    Ma mi dice:
    La lunghezza non pu essere minore di zero.
    Nome parametro: length
    
    Il contenuto della stringa il seguente:
    uuid ( RO)           : f51bf12f-478c-79ed-c7bb-4eddeb8dc01f      name-label ( RW): computer1     power-state ( RO): running   uuid ( RO)           : 28fbd099-47e0-4c5e-9cde-c072edbc998c      name-label ( RW): Control domain on host: server01     power-state ( RO): running   uuid ( RO)           : 86689d31-3161-148a-9443-2987999228b4      name-label ( RW): pc01     power-state ( RO): halted   uuid ( RO)           : 6d223d11-77d4-9e04-94f4-e0a78abccdd0      name-label ( RW): Windows-pc     power-state ( RO): halted   uuid ( RO)           : 127d385c-266f-4903-4827-4e4859c94b5c      name-label ( RW): linuxpc     power-state ( RO): halted   "
    
    Ovviamente non identato, ma tutto di seguito.

    Non capisco perch venga segnalato il fatto che la stringa non pu essere minore di zero.

    Grazie ancora
    Ultima modifica di ljt; 28-11-2019 12:22 

  6. #16
    ljt
    ljt non  in linea Scolaretto
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    linuxpc

    il nome di uno dei pc
    Esatto il nome di un pc facente parte di un cluster di dominio di VM.

  7. #17
    Se hai un errore allora cmd.result.string NON contiene la stringa identica contenuta nel file elenco.txt.

    La stringa visualizzata in quel modo non ci dice nulla sul suo contenuto in termini di caratteri di controllo.

    Molto probabilmente non contiene caratteri vbCrLf ma solo vbCr

    Se non ci dai un file proveniente dal comando esattamente come arriva dal comando possiamo fare solo ipotesi.
    Ferma con un breakpoint l'esecuzione e mostra con una immagine il contenuto di elenco in debugging
    ℹ️ Leggi di pi su AntonioG ...

  8. #18
    ljt
    ljt non  in linea Scolaretto
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    Se hai un errore allora cmd.result.string NON contiene la stringa identica contenuta nel file elenco.txt.

    La stringa visualizzata in quel modo non ci dice nulla sul suo contenuto in termini di caratteri di controllo.

    Molto probabilmente non contiene caratteri vbCrLf ma solo vbCr

    Se non ci dai un file proveniente dal comando esattamente come arriva dal comando possiamo fare solo ipotesi.
    Ferma con un breakpoint l'esecuzione e mostra con una immagine il contenuto di elenco in debugging
    Ecco qui l'immagine che viene visualizzata:
    Nome:   img.png
Visite:  14
Grandezza:  65.8 KB

  9. #19
    No cos non si capisce ... intendevo il contenuto della stringa in hex. Usa questo codice

            Dim s As String = ""
            Dim elenco As String = System.IO.File.ReadAllText("elenco.txt")
            For c As Integer = 0 To elenco.Length - 1
                s &= Conversion.Hex(Strings.Asc(elenco.Substring(c, 1).ToString())) & " "
            Next
            Console.WriteLine(s)
    
    e mostra il contenuto della finestra di output
    ℹ️ Leggi di pi su AntonioG ...

  10. #20
    ljt
    ljt non  in linea Scolaretto
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    No cos non si capisce ... intendevo il contenuto della stringa in hex. Usa questo codice

            Dim s As String = ""
            Dim elenco As String = System.IO.File.ReadAllText("elenco.txt")
            For c As Integer = 0 To elenco.Length - 1
                s &= Conversion.Hex(Strings.Asc(elenco.Substring(c, 1).ToString())) & " "
            Next
            Console.WriteLine(s)
    
    e mostra il contenuto della finestra di output
    Ok, questa la schermata in debug:

    Allegato 2595

    Riporto comunque anche la stringa:
    75 75 69 64 20 28 20 52 4F 29 20 20 20 20 20 20 20 20 20 20 20 3A 20 66 35 31 62 66 31 32 66 2D 34 37 38 63 2D 37 39 65 64 2D 63 37 62 62 2D 34 65 64 64 65 62 38 64 63 30 31 66 D A 20 20 20 20 20 6E 61 6D 65 2D 6C 61 62 65 6C 20 28 20 52 57 29 3A 20 63 6F 6D 70 75 74 65 72 31 D A 20 20 20 20 70 6F 77 65 72 2D 73 74 61 74 65 20 28 20 52 4F 29 3A 20 72 75 6E 6E 69 6E 67 D A D A D A 75 75 69 64 20 28 20 52 4F 29 20 20 20 20 20 20 20 20 20 20 20 3A 20 32 38 66 62 64 30 39 39 2D 34 37 65 30 2D 34 63 35 65 2D 39 63 64 65 2D 63 30 37 32 65 64 62 63 39 39 38 63 D A 20 20 20 20 20 6E 61 6D 65 2D 6C 61 62 65 6C 20 28 20 52 57 29 3A 20 43 6F 6E 74 72 6F 6C 20 64 6F 6D 61 69 6E 20 6F 6E 20 68 6F 73 74 3A 20 73 65 72 76 65 72 30 31 D A 20 20 20 20 70 6F 77 65 72 2D 73 74 61 74 65 20 28 20 52 4F 29 3A 20 72 75 6E 6E 69 6E 67 D A D A D A 75 75 69 64 20 28 20 52 4F 29 20 20 20 20 20 20 20 20 20 20 20 3A 20 38 36 36 38 39 64 33 31 2D 33 31 36 31 2D 31 34 38 61 2D 39 34 34 33 2D 32 39 38 37 39 39 39 32 32 38 62 34 D A 20 20 20 20 20 6E 61 6D 65 2D 6C 61 62 65 6C 20 28 20 52 57 29 3A 20 70 63 2D 30 31 D A 20 20 20 20 70 6F 77 65 72 2D 73 74 61 74 65 20 28 20 52 4F 29 3A 20 68 61 6C 74 65 64 D A D A D A 75 75 69 64 20 28 20 52 4F 29 20 20 20 20 20 20 20 20 20 20 20 3A 20 36 64 32 32 33 64 31 31 2D 37 37 64 34 2D 39 65 30 34 2D 39 34 66 34 2D 65 30 61 37 38 61 62 63 63 64 64 30 D A 20 20 20 20 20 6E 61 6D 65 2D 6C 61 62 65 6C 20 28 20 52 57 29 3A 20 57 69 6E 64 6F 77 73 2D 70 63 D A 20 20 20 20 70 6F 77 65 72 2D 73 74 61 74 65 20 28 20 52 4F 29 3A 20 68 61 6C 74 65 64 D A D A D A 75 75 69 64 20 28 20 52 4F 29 20 20 20 20 20 20 20 20 20 20 20 3A 20 31 32 37 64 33 38 35 63 2D 32 36 36 66 2D 34 39 30 33 2D 34 38 32 37 2D 34 65 34 38 35 39 63 39 34 62 35 63 D A 20 20 20 20 20 6E 61 6D 65 2D 6C 61 62 65 6C 20 28 20 52 57 29 3A 20 6C 69 6E 75 78 70 63 D A 20 20 20 20 70 6F 77 65 72 2D 73 74 61 74 65 20 28 20 52 4F 29 3A 20 68 61 6C 74 65 64
    
    P.S. ho modificato il codice in questo modo:
    Dim s As String = ""
                Dim elenco As String = System.IO.File.ReadAllText("c:\scambio\elenco.txt")
                For c As Integer = 0 To elenco.Length - 1
                    s &= Hex(Strings.Asc(elenco.Substring(c, 1).ToString())) & " "
                Next
                Console.WriteLine(s)
    
    perch mi dava errore.

+ Rispondi al messaggio
Pagina 2 di 4 primaprima 1234 ultimoultimo

Potrebbero interessarti anche ...

  1. Ricerca ed estrazione di stringa
    Da iemmgi nel forum Microsoft Excel
    Risposte: 16
    Ultimo Post: 13-02-2013, 12:02
  2. estrazione di caratteri da parte di una stringa
    Da Newton nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 11-03-2011, 23:41
  3. estrazione di una stringa da un nomefile
    Da Newton nel forum Visual Basic 6
    Risposte: 7
    Ultimo Post: 25-11-2009, 15:42
  4. [Access] estrazione dati da stringa
    Da brian nel forum Microsoft Access
    Risposte: 11
    Ultimo Post: 09-12-2008, 00:15
  5. problemi con estrazione stringa
    Da dani83 nel forum Microsoft Word
    Risposte: 7
    Ultimo Post: 09-08-2007, 12:12