FlowHeater Demo Video
 
Der Daten Import / Export Spezialist
 
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
Schauen Sie sich auch die verfügbaren Beispiele zum TextFile Adapter an evtl. kann Ihre Frage hiermit schon beantwortet werden: Codepage konvertieren 1 / 2 , Verarbeitung von CSV Kopf- und Fußzeilen , Import und Export von vCard Textdateien
  • Seite:
  • 1

THEMA:

Steuerzeichen im Read entfernen 1 Monat 4 Tage her #3980

Hallo Robert,

ich habe immer mal wieder den Fall, das sich in Textdateien, die ich von Kunden bekomme Steuerzeichen befinden, die meine Datenstruktur schon beim Import in den Flowheater total zerschießen. Im Moment öffne ich diese "Problemfälle" vorab in Excel und wende hier den "Säubern" Befehl an.
Danach lassen sich die Daten gut mit dem FH verarbeiten.
Gibt es eine Möglichkeit Sonderzeichen (Dez 0 - 31 und 127) schon im Read-Adapter zu eliminieren?
Sollte dies funktionieren würde ich diese Option gerne defaultmäßig aktivieren, da bei zig-tausenden Datensätzen einige wenige "verschobene" nicht auffallen. Diese "Zerschossenen" Datensätze können aber schwerwiegende Fehler bzw. Kosten nach sich ziehen.
Gibt es aus deiner Sicht einen Lösungsweg?

Gruß Ralf

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Steuerzeichen im Read entfernen 1 Monat 4 Tage her #3981

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Beiträge: 1517
Hallo Ralf,

nicht druckbare Sonder- bzw. Steuerzeichen können aktuell nicht direkt über den TextFile Adpater auf der READ Seite entfernt werden. Die Zeilen/Spalten müssen gelesen werden um Sie dann im FlowHeater bearbeiten zu können.

Der TextFile Adapter kann diese nicht druckbaren Sonder-/Steuerzeichen aber problemlos lesen und auch den definierten Spalten zuordnen, lediglich die Anzeige im Konfigurator könnte etwas verschoben aussehen, falls nicht druckbare Sonder- bzw. Steuerzeichen vorhanden sein sollten. ggf. stimmt aber auch die ausgewählte Codepage nicht?

Was du tun kannst ist folgendes. Du erstellst Dir eine FlowHeater Definition, oder einen vorgelagerten Verarbeitungsschritt. Hier liest du eine komplette Zeile der CSV Datei in ein Feld im FlowHeater ein und schickst das Feld durch unten aufgeführtes C# Skript für den .NET Script Heater .
Wie das einlesen einer kompletten CSV Zeile in eine Spalte geht wird näher in folgenden Artikel beschrieben: Berechneten Wert an Write-Datei anhängen

Das C# Skript entfernt dann alle nicht druckbaren Sonder- bzw. Steuerzeichen aus dem Inhalt. Im Anschluss kannst du dann deine ganz normale Verarbeitung über die neu geschrieben CSV Datei laufen lassen.

Im Anhang findest Du ein kleines Beispiel dazu.

C# Skript um nicht druckbare Steuerzeichen aus Zeichenkette zu entfernen
public object DoWork()
{
    string sIN = (string)InValues[0].GetString();
    StringBuilder sOUT = new StringBuilder();

    foreach(char c in sIN)
    {
        // nicht druckbare Sonder- bzw. Steuerzeichen aus Zeichenfolge entfernen, Tabulator und Zeilenumbruch aber zulassen!
        if (char.IsControl(c) && c != '\t' && c != '\n' && c != '\r')
            continue;

        sOUT.Append(c);
    }

    return sOUT.ToString();
}

Dateianhang:

Dateiname: steuerzeic...rnen.zip
Dateigröße:5 KB

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

gruß
Robert Stark

Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
  • Seite:
  • 1

andere Sprachen

en

FlowHeater Home

de en

Impressum/Kontakt

Datenschutz

Copyright © 2009-2020 by FlowHeater GmbH.
Alle Rechte vorbehalten.

Follow us on

twitter  facebook

YouTube

 de en