Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28

Discussione: String e arraylist

  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    String e arraylist

    Ho una stringa del genere:

    Cod: 1234 Categoria: ABC Descrizione: AABBCC |||Cod: 5678 Categoria: DEF Descrizione: DDEEFF ||| Cod: 5896 Categoria: ZSW Descrizione: ZZSSWW |||

    Vorrei inserirla in un arraylist, come posso agire? L'arraylist mi servirà poi per andare a popolare un repeater. Non trovo un esempio che faccia al mio caso.

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    codice:
         string str = "Cod: 1234 Categoria: ABC Descrizione: AABBCC |||Cod: 5678 Categoria: DEF Descrizione: DDEEFF ||| Cod: 5896 Categoria: ZSW Descrizione: ZZSSWW |||";
         string[] arrStr = Microsoft.VisualBasic.Split(str, "|||", -1, CompareMethod.Text);
        
         ArrayList arrList = new ArrayList();
         for (int ind = 0; ind <= Information.UBound(arrStr) - 1; ind++) {
             arrList.Add(arrStr(ind));
         }
        
         RP_repeater.datasource = arrList;
         RP_repeater.DataBind();

  3. #3
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    string[] arrStr = Microsoft.VisualBasic.Split(str, "|||", -1, CompareMethod.Text);

    ---

    In compilazione mi da questo errore: Error 1 The type or namespace name 'Split' does not exist in the namespace 'Microsoft.VisualBasic' (are you missing an assembly reference?)

    Uso C# e ho provato a traddurre in Microsoft.Cshap ma non anche qui lo split non c'è nel namespace.

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Lo sospettavo, perchè l'ho tradotto. Sinceramente su questo non sono esperto :master:

    vedi qui http://www.dotnet247.com/247referenc...26/130097.aspx

    l'esempio riportato:

    codice:
    public class SplitTest {
    public static void Main () {
    string text = "Kibology for all";
    string[] words = text.Split(new char[] {' '});
    for (int i = 0; i < words.Length; i++)
    System.Console.WriteLine("word {0}: {1}", i, words[i]);
    }
    }
    quindi nel tuo caso dovrebbe essere:

    codice:
    string[] arrStr = str.Split(new char[] {'|||'});
    ma ti ripeto, a C# non sono abituato, prendi tutto con le molle

  5. #5
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Grazie

    La stranezza che su questa riga:

    string[] arrStr = strarticoli.Split(new char[] {'|||'});

    Ho questo errore

    Error 1 Too many characters in character literal

    se al posto di '|||' metto uno spazio invece gli va bene!

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Originariamente inviato da Sonikag
    Grazie

    La stranezza che su questa riga:

    string[] arrStr = strarticoli.Split(new char[] {'|||'});

    Ho questo errore

    Error 1 Too many characters in character literal

    se al posto di '|||' metto uno spazio invece gli va bene!

    aspettiamo qualche anima pia che ci dica come usare la split o equivalente in C# allora

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    {'|||'}

    {"|||"} :master:
    Pietro

  8. #8
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Problemi persistono :master:

    string[] arrStr = strarticoli.Split(new char[] { "|||" });

    Error 1 Cannot implicitly convert type 'string' to 'char'

    ---

    for (int ind = 0; ind <= Information.UBound(arrStr) - 1; ind++)

    Error 2 The name 'Information' does not exist in the current context

    ---

    ArrayList.Add(arrStr(ind));

    Error 3 'arrStr' is a 'variable' but is used like a 'method'

    Sonia

  9. #9
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Io non uso certo il c# ma, santa pazienza,

    new char[] { "|||" });

    come pretendi di dichiarare un vettore di char per poi inizializzarlo a stringa

    var a = "Stefano|||Carlo|||Nicola";

    var arStr = a.Split(new string[] {"|||"}, StringSplitOptions.RemoveEmptyEntries);

    for (var i = 0; i < arStr.Length; i++)
    Response.Write(arStr[i] + "
    ");


    Pietro

  10. #10
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080
    Il codice l'ho modificato così:

    codice:
    ArrayList arrList = new ArrayList();
    
    string[] arStr = strarticoli.Split(new string[] { "|||" }, StringSplitOptions.RemoveEmptyEntries);
    
    for (int i = 0; i < arStr.Length; i++)
    //Response.Write(arStr[i] + "--------------------
    ");
    ArrayList.Add(arStr(i));
    
    repcarr.DataSource = arStr;
    repcarr.DataBind();

    Se nel for commento ArrayList.Add(arStr(i)); e scommento il response.write non ho errori e visualizzo correttamente le cose, se però lascio il codice così comè ho questo errore:

    Error 3 'arStr' is a 'variable' but is used like a 'method'


    Grazie
    Sonia

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.