Skip to main content
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 Download

Umlaute, Sonderzeichen und Co.

Mehr
12 Jahre 9 Monate her #440 von fertac
Umlaute, Sonderzeichen und Co. wurde erstellt von fertac
Hallo Herr Stark,

habe folgenden Code. Kann aber ö, ä nicht mit verarbeiten und wenn auf der read Seite 1/3" für 1/3 Zoll steht setzt er "1/3"" auf der write Seite.

Habe schon Sonderzeichen im script eingebaut. Bin aber nicht sicher ob das so o.k. ist.

Beispiel: redseite
ändern
öfnen
1/3" Rohr


string [] csv = null;

public object DoWork()
{
string sRet = null;
string ersetzen_durch = ""; // = wird aus der Zeichenkette entfernt

// CSV replace daten einlesen;

if (csv == null)
csv = File.ReadAllLines("replace.csv");

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

// falls Zeichen fehlen sollten hier die zusätzlichen Sonderzeichen eintragen
// die nicht ersetzt werden sollen
string sonderzeichen = "\t\n\r\\[\\]!ß´#\"$§%&' ()*+€,-./:;<=>?@\\^_`{|}~";

Regex myRegex = new Regex(@"[^\w\d" + sonderzeichen + "]");
sIN = myRegex.Replace(sIN, ersetzen_durch);



// Ü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[0], StringComparison.CurrentCultureIgnoreCase) >= 0)
{
sRet = values[1];
break;
}
}

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

return sRet;
}

Viele Grüße
fertac :unsure:

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #441 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Kappen,

Das mit dem Regular Expression (RegEx) ist nicht notwendig. Im Anhang befindet sich ein Beispiel, das auch mit Umlauten funktioniert.

Ich denke bei Ihnen ist die replace.csv Datei nicht im Windows ANSI (Codepage 1251) Format abgespeichert. Was zeigt Ihnen z.B. Notepad an wenn Sie die Datei replace.csv öffnen. Werden hier die Sonderzeichen und Umlaute richtig dargestellt? Wenn nein, müssen Sie die Datei vorher konvertieren. Geht auch mit dem FlowHeater, siehe Beispiele:
  1. MS DOS ASCII CSV zu Windows ANSI FlatFile konvertieren
  2. Windows ANSI FlatFile zu MS DOS ASCII CSV konvertieren
PS: Ca. Anfang nächste Woche wird es eine neue Version geben. Hier ist diese Funktionalität des Skriptes in den String Replace Heater eingebaut. Unter anderem können Sie dann auch die Codepage auswählen in der ihre ersetzen Datei vorliegt.

Anhang umlaute.zip wurde nicht gefunden.


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 um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #442 von fertac
fertac antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Stark,

danke für die schnelle Antwort.

Das Problem liegt aber nicht auf der read sondern auf der write Seite. Wenn ich in der replace.csv das eintrage:

öffnen; noch nicht geöffnet // write Seite ...ge?ffnet
1/3" ; 1/3" oder größer // write Seite "1/3""...
ändern; noch nicht geändert // write Seite ...ge?ndert

Beide Seiten sind auf Code 1252 eingestellt wie in ihrem Beispiel.

Viele Grüße
fertac ;)

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #443 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Mit welchen Editor bzw. Programm schauen Sie sich denn die Ausgabe Daten an? Funktioniert mein Beispiel mit den Umlauten bei Ihnen?

Für eine weitere Analyse benötige ich Ihre Defintion, die replace.csv sowie (Test) Eingangsdaten mit dennen das nachgstellt werden kann. Bitte alles in ein ZIP Archiv packen und hier einstellen.

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.

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #447 von fertac
fertac antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Stark,

hier die .zip Datei mit dem Beispiel.
In der input Datei steht:
djk hfdk fhdk fkjd1/3"hfkdhf kd hfkdhfkdhkfjh dkjfh dkfhdkjhf kdjhf jdhfdkjfddkfh dkfhdkj

Auf der reade Seite:
"djk hfdk fhdk fkjd1/3""hfkdhf kd hfkdhfkdhkfjh dkjfh dkfhdkjhf kdjhf jdhfdkjfddkfh dkfhdkj"

Auf der write Seite:
Sonstiges // da der Begriff nicht gefunden wurde

Viele Grüße
fertac

Anhang fertac_replace.zip wurde nicht gefunden.

Anhänge:

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #448 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Kappen,

mit folgenden Script wird die replace.csv Datei nun auch mit der gleichen Codepage geöffnet wie gelesen bzw. geschrieben wird. Bitte versuchen Sie es mit diesem Skript erneut.

Es hat sich nur folgende Zeile geändert!
csv = File.ReadAllLines("replace.csv", Encoding.Default);
Code:
string [] csv = null; public object DoWork() { string sRet = null; // CSV replace daten einlesen if (csv == null) csv = File.ReadAllLines("replace.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[0], StringComparison.CurrentCultureIgnoreCase) >= 0) { sRet = values[1]; break; } } if (sRet == null) sRet = "Sonstiges"; // hier ggf. den Wert ändern falls nichts zutreffend! return sRet; }

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.

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #453 von fertac
fertac antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Stark,

danke für die schnelle Antwort.

Das mit den Umlauten funktioniert jetzt sehr gut.

Aber das Thema " klappt noch nicht. Sobald in der input Datei ein " vorkommt setzt die readseite das wiederum in Anführungsstriche. Das sieht dann immer noch so wie oben beschrieben aus.

Danke für ihre guten Nerven und Geduld.

Viele Grüße
fertac

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #455 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Kappen,

das liegt daran, dass Sie Hochkommas in Ihrer replace.csv stehen haben :)

Ändern Sie mal die Zeile

"1/3""";"1/3"" Rohr oder größer ohne zu ändern "

auf

1/3";1/3" Rohr oder größer ohne zu ändern

Dann sollte es funktionieren.

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.

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #456 von fertac
fertac antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Stark,

jetzt kommen wir der Sache schon näher.

Offensichtlich sehen sie beim öffnen der Excel-Datei replace.csv folgendes:
"1/3""";"1/3"" Rohr oder größer ohne zu ändern "


Ich sehe beim öffnen der Datei mit Excel:
1/3";1/3" Rohr oder größer ohne zu ändern
(siehe .jpg)

Mein Eintrag scheint somit richtig zu sein.


Im FlowHeater - Text File Viewer sehe ich dann auch wieder:
"1/3""";"1/3"" Rohr oder größer ohne zu ändern "

Die Veränderung findet dann wohl beim Einlesen nach FlowHeater statt.

Viele Grüße
fertac B)

Anhang fertac_replace-20110603-3.zip wurde nicht gefunden.

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #457 von FlowHeater-Team
FlowHeater-Team antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Kappen,

CSV Dateien mit Excel zu öffnen kann ich Ihnen nicht empfehlen! Excel zeigt Ihnen hier was Falsches an. Bitte öffnen Sie Ihre CSV Datei mal mit Notepad, dann sehen Sie, dass hier in der letzen Zeile Hochkommas vorhanden sind!

Die äußeren Hochkommas können Sie auf der READ Seite Eleminieren wenn Sie im TextFile Adapter auf dem Reiter Trennzeichen für die Textbegrenzung "abc" einstellen.

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.

Bitte Anmelden um der Konversation beizutreten.

Mehr
12 Jahre 9 Monate her #458 von fertac
fertac antwortete auf Aw: Umlaute, Sonderzeichen und Co.
Hallo Herr Stark,

ja das ist ein Weg der funktioniert.

Eine andere Lösung ist eine Excel-Datei einzulesen und eine Excel-Datei auszugeben. Dann gibt es kein Problem mehr mit den ".

Eine weitere Lösung aus einer Excel-Datei eine .csv-Datei ohne "-Probleme zu generieren habe ich hier.
Der VB-Script gehört in eine Excel-Datei die in .csv gewandelt werden soll. Hier wird eine .csv Datei mit gleichem Namen im gleichen Ordner erstellt.

Public Sub prcCreateCSV()
Dim intFileNumber As Integer
Dim lngRow As Long
Reset
intFileNumber = FreeFile
With ThisWorkbook
.Save
Open .Path & "\" & Left$(.Name, Len(.Name) - 4) & _
".csv" For Output As #intFileNumber
End With
With ActiveSheet.UsedRange
For lngRow = 1 To .Row + .Rows.Count - 1
Print #intFileNumber, Join(WorksheetFunction.Transpose( _
WorksheetFunction.Transpose(Range(Cells(lngRow, 1), _
Cells(lngRow, .Column + .Columns.Count - 1)))), ";")
Next
End With
Close #intFileNumber
End Sub


Viele Grüße
fertac :) :)

Bitte Anmelden um der Konversation beizutreten.

Ladezeit der Seite: 0.378 Sekunden

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.