Leerzeichen in datagridview cell entfernen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von benk.

    Leerzeichen in datagridview cell entfernen

    Hallo,
    ich erstelle eine Anwendung in der Excel Tabellen in ein Datagridview geladen werden, um nach evtl. nötigen Änderungen in eine Sqlite Tabelle gespeichert zu werden.

    Da Sqlite nicht so gut mit Leerzeichen in den Spalten kann, versuche ich die Leerzeichen in dem Datagridview durch Unterstriche zu ersetzen.
    Es gibt dort z.B. Spaltenbezeichnungen Umsatz KAA, dies würde ich gerne durch Umsatz_KAA ersetzen.

    Ich habe folgende Lösung

    Quellcode

    1. For Each cell As DataGridViewCell In dgvUmsatz.Rows(0).Cells
    2. If cell.Value.ToString = " " Then
    3. cell.Value = "_"
    4. End If
    5. Next


    Das ersetzt aber nur einzelne Leerzeichen bzw. "alleinstehende" Leerzeichen ....

    Wie kann ich im Wort bzw. dem String nach Leerzeichen suchen?
    Oder gibt es eine bessere evtl. ganz andere Möglichkeit?

    Danke!
    @benk So was, da werden alle Leerzeichen eines Strings dirch "_" ersetzt:

    VB.NET-Quellcode

    1. Dim txt = DEIN_TEXT.Replace(" ", "_")
    Wäre es nicht einfacher, die Daten beim Einlesen umzuarbeiten?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke für den Hinweis! Das hat mich zu einer für mich funktionierenden Lösung geführt

    Quellcode

    1. ​Dim i As Integer
    2. For i = 0 To dgvUmsatz.Columns.Count - 1
    3. dgvUmsatz.Columns(i).HeaderText = dgvUmsatz.Columns(i).HeaderText.Replace(" ", "_")
    4. Next


    Beim Einlesen umzuarbeiten wäre wahrscheinlich auch möglich, übersteigt aber meine derzeitigen Kenntnisse....