Zum Hauptinhalt springen
Weil einfach - produktiver ist

Der Daten Spezialist

Konvertieren Sie die Daten mühelos zwischen verschiedenen Formaten ohne Programmierkenntnisse dank Visual Designer. Effizient und super einfach.
Flowheater Chart

Zeileninhalt in definierte Blöcke teilen

  • Wolfgang Kreutzer
  • Autor
  • Offline
  • Benutzer
  • Benutzer
Mehr
2 Jahre 11 Monate her #4413 von Wolfgang Kreutzer
Zeileninhalt in definierte Blöcke teilen wurde erstellt von Wolfgang Kreutzer
Hallo & schönen Aband!

Nachdem ich bei meiner Suche hier im Forum (noch) nicht fündig geworden bin, möchte ich hier mein Problem schildern und auf eure Unterstützung hoffen:

Ich erhalte regelmäßig Dateien mit unterschiedlicher Zeilenanzahl- und Länge, wobei ich den Inhalt der Zeilen in definierte Blöcke aufteilen soll.
Der Aufbau ist dabei grundsätzlich so:
[leerzeichenloser_String_1]<space>[leerzeichenloser_String_2]<space>[leerzeichenloser_String_3]<space>[String_der_auch_beliebig_viele_Leerzeichen_enthalten_kann]

Die Länge der einzelnen Strings ist variabel, sonst hätte ich den Heater SubString genommen, für den aber die Länge des zu extrahierenden Teilstrings bekannt sein muss.

Daher habe ich es mal mit dem Heater Split versucht, der mir die ersten 3 (leerzeichenlosen) Strings auch anstandslos ausgibt. Der letzte Teil der Zeile wird aber leider aufgrund der enthaltenen Leerzeichen ebenfalls zerstückelt - den hätte ich aber gerne als einen zusammenhängenden 4. String ausgegeben - so frei nach dem Motto "gib mir alles nach dem 3. Leerzeichen aus". Scheinbar funktioniert Split aber nicht so (oder ich hab's noch nicht richtig verstanden).

Wie könnte eine Lösung mit den vorhandenen Bordmitteln aussehen oder geht das nur mit einem Skript?

Danke schon vorab für die Unte

 

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
2 Jahre 11 Monate her - 2 Jahre 11 Monate her #4414 von FlowHeater-Team
FlowHeater-Team antwortete auf Zeileninhalt in definierte Blöcke teilen
Hallo Herr Kreutzer,

bei der Erstellung eines Beispiels dafür, ist mir aufgefallen, dass der SubString Heater keine FlowHeater Parameter für den „Start Index“ sowie für die Länge zulässt. So ist das aktuell nur mit einem zusätzlichen .NET Script Heater und untenstehenden C# Skript durchführbar.

Das Skript kann einfach in den .NET Script Heater kopiert werden und liefert dynamisch die Zeichenfolge nach dem dritten Leerzeichen zurück. Im Anhang finden Sie ein kleines Beispiel dazu.

PS: Der SubString Heater wird mit der nächsten Version angepasst, so dass hier dynamisch auch FlowHeater Parameter verwendet werden können und das ganze ist ohne Skript durchführbar.

C# Skript
Code:
public object DoWork() {     if (InValues.Length != 1)         throw new Exception("1 Eingangsparameter erwartet!");     string input = (String)InValues[0].GetString();     // Erstes Leerzeichen suchen     int pos = input.IndexOf(" ");     // Zweites Leerzeichen suchen     pos = input.IndexOf(" ", pos + 1);     // Neu Zeichenfolge ab dritten Leerteichen zurückgeben     return input.Substring(pos + 1); }


 

Dateianhang:

Dateiname: spalten-dy...ilen.zip
Dateigröße:7 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.
Letzte Änderung: 2 Jahre 11 Monate her von FlowHeater-Team.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • Wolfgang Kreutzer
  • Autor
  • Offline
  • Benutzer
  • Benutzer
Mehr
2 Jahre 11 Monate her #4415 von Wolfgang Kreutzer
Wolfgang Kreutzer antwortete auf Zeileninhalt in definierte Blöcke teilen
Vielen lieben Dank für die rasche Antwort und den Beispielcode!

Es hat genauso funktioniert, wie ich es mir vorgestellt habe ...

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
2 Jahre 10 Monate her - 2 Jahre 10 Monate her #4429 von FlowHeater-Team
FlowHeater-Team antwortete auf Zeileninhalt in definierte Blöcke teilen
Hallo Herr Kreutzer,

Mit der aktuellen Beta Version wurde SubString Heater dementsprechend angepasst so dass dieser nun auch FlowHeater Parameter unterstützt. Im Anhang finden Sie auch ein angepasstes Beispiel dazu.

Die aktuelle Beta Version können Sie über folgenden Link herunterladen: Download Beta Version


 

Dateianhang:

Dateiname: spalten-dy...en-2.zip
Dateigröße:3 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.
Letzte Änderung: 2 Jahre 10 Monate her von FlowHeater-Team.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • Wolfgang Kreutzer
  • Autor
  • Offline
  • Benutzer
  • Benutzer
Mehr
2 Jahre 10 Monate her #4432 von Wolfgang Kreutzer
Wolfgang Kreutzer antwortete auf Zeileninhalt in definierte Blöcke teilen
Vielen Dank

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Ladezeit der Seite: 0.285 Sekunden
FlowHeater Logo

FlowHeater - Der Daten Spezialist

Effiziente Datenintegration und Transformation mit FlowHeater - Ihre Lösung für nahtlosen Datentransfer.

Rechtliches

Support & Kontakt

Kontaktinformation

Telefon:
0951 / 99339792

E-Mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein.


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