Dynamischer Daten Import / Export

datenbank

weil Einfach - produktiver ist
Mit der Freeware Version können bis zu 10.000 Datensätze verarbeitet werden!
Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
Willkommen im FlowHeater Support Forum!

Hier werden Fragen zum Umgang mit dem FlowHeater beantwortet.

THEMA: Spalten vergleichen - falsches Ergebnis

Spalten vergleichen - falsches Ergebnis 4 Jahre 4 Monate her #1031

  • fertac
  • fertacs Avatar
  • Offline
  • Senior Member
  • Beiträge: 49
Hallo Herr Stark,

noch ein dickes Lob an Sie. FlowHeater ist genial!

Folgendes ist uns aufgefallen:

Wenn wir aus 2 csv Dateien jeweils eine Spalte vergleichen bekommen wir ein unrichtiges Ergebnis.

Datei1 Spalte1: 214FH
Datei2 Spalte1: 214FHD

Ergebnis: Auch bei Datei2 Spalte1: 214FHD erkennt er nur den Inhalt von Datei1 Spalte1: 214FH - also nur 214FH

hier das Script was verwendet wird:

string [] csv = null;

public object DoWork()
{
string sRet = null;

// CSV replace daten einlesen


if (csv == null)
csv = File.ReadAllLines("XXXXX.csv", Encoding.Default);

string sIN = (String)InValues[0].GetString();
if (sIN == null)
return null;

// Über alle Zeilen der replace.csv Datei lesen
foreach(string line in csv)
{
char [] trennzeichen = { ';' }; //
string [] values = line.Split(trennzeichen);

// kommt der 1. Wert der CSV Datei im IN Parameter vor,
// dann den 2. Wert der CSV zurückgeben.

if (sIN.IndexOf(values[4], StringComparison.CurrentCultureIgnoreCase) >= 0)
{
sRet = "Inhalt ist gleich";
break;
}
}

if (sRet == null)
sRet = "x"; // hier ggf. den Wert ändern falls nichts zutreffend!

return sRet;
}

Wie können wir die Routine zwingen wirklich den ganzen Text (100%) zu vergleichen und nicht nur die ersten Gemeinsamkeiten.

mfg
fertac :)
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Spalten vergleichen - falsches Ergebnis 4 Jahre 4 Monate her #1032

  • FlowHeater-Team
  • FlowHeater-Teams Avatar
  • Offline
  • Administrator
  • Beiträge: 1102
Hallo Herr Kappen,

Sie müssen lediglich die Bedingung austauschen.

Anstatt
if (sIN.IndexOf(values[4], StringComparison.CurrentCultureIgnoreCase) >= 0)

müssen Sie folgende Bedingung verwenden.
if (sIN == values[4])

PS: Dieses Skript ist nicht mehr notwendig. Der String Replace Heater kann mittlerweile CSV Listenersetzungen und wesentlich mehr. Hier im Forum gibt es bereits einige Beispiel dazu.
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.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Spalten vergleichen - falsches Ergebnis 4 Jahre 4 Monate her #1033

  • fertac
  • fertacs Avatar
  • Offline
  • Senior Member
  • Beiträge: 49
Hallo Herr Stark,

danke für die schnelle Antwort. Ja sie haben Recht. Wir werden in Zukunft den Replace Heater für solche Aufgaben verwenden.

Beste Grüße
fertac
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Moderatoren: FlowHeater-Team
Ladezeit der Seite: 0.074 Sekunden