Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Join Strings

Îåêßíçóå áðü ôï ìÝëïò fterotos. Τελευταία δημοσίευση από το μέλος imanos στις 29-03-2006, 09:30. Υπάρχουν 3 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  28-03-2006, 21:17 11279

    Join Strings

    Καλησπέρα έχω ένα πίνακα που έχει Strings.Θέλω να χωρίσω τον πίνακα με κόμματα και να τα βάλω σε ένα string.Αρχικά έχω ένα ArrayList.Κάνω το εξής :

     Dim list As New ArrayList
            list.Add("1")
            list.Add("2")
            list.Add("3")

        ' o pinakas   
       Dim values = list.ToArray()

    Dim sep As String = ","

    Dim s As String = String.Join(sep, values)

    Label.Text=s

    μου πετάει το error στην πωτελευταία γραμμή :

    Specified cast is not valid.



  •  29-03-2006, 07:24 11284 σε απάντηση της 11279

    Απ: Join Strings

    Το πρόβλημα του error είναι ότι η μεταβλητή values δεν μπορεί να μετατραπεί σέ 1-dimensional array γι'αυτό κάνε το παρακάτω.



    Dim list As New ArrayList()

    list.Add("1")
    list.Add("2")
    list.Add("3")

    ' o pinakas

    Dim values = list.ToArray()
    Dim a() As String

    ReDim a(values.Length - 1)

    Dim i As Int32

    For i = values.GetLowerBound(0) To values.GetUpperBound(0)
       a(i) = values(i).ToString
    Next

    Dim sep As String = ","

    Dim s As String = String.Join(sep, a)

    Label.Text=s



    ή το ίδιο μπορεί να το κάνεις και μέ IEnumerator αντί τών GetLowerBound και GetUpperBound
    Ιωάννης Μανουσάκης
  •  29-03-2006, 09:07 11286 σε απάντηση της 11284

    Απ: Join Strings

     imanos wrote:

    For i = values.GetLowerBound(0) To values.GetUpperBound(0)
       a(i) = values(i).ToString
    Next

    ή το ίδιο μπορεί να το κάνεις και μέ IEnumerator αντί τών GetLowerBound και GetUpperBound

    Ή μπορείς να χρησιμοποιήσεις την ArrayList.CopyTo για να μη γράφεις μόνος σου το loop.


    Νατάσα Μανουσοπούλου
  •  29-03-2006, 09:30 11288 σε απάντηση της 11286

    Απ: Join Strings

    Πολύ σωστά το έθεσε η mns .Μ' αυτό τον τρόπο μπορείς να χρησιμοποιήσεις το παρακάτω.

    Αποτέλεσμα μειωμένος κώδικας.

    Dim list As New ArrayList()

    list.Add("1")

    list.Add("2")

    list.Add("3")



    Dim a(2) As String



    list.CopyTo(a)



    Dim sep As String = ","

    Dim s As String = String.Join(sep, a)
    Ιωάννης Μανουσάκης
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems