Laden...

Das "µ"-Zeichen ist beim Schreiben "μ" - Wie erhalte ich das "µ"-Zeichen?

Letzter Beitrag vor 8 Jahren 11 Posts 3.607 Views
Das "µ"-Zeichen ist beim Schreiben "μ" - Wie erhalte ich das "µ"-Zeichen?

Guten Morgen,

ich lese aus einer Text- oder Exceldatei folgende Zeichenfolge ein :

μs/cm

in der Entwicklungsumgebung sehe ich es "normal"

µs/cm

auch im Bytearray ist auch alles normal.

µs/cm

soll eigentlich in der Zielexcelmappe bzw. csv auftauchen, dort erscheint jedoch wieder

μs/cm

...
ich habe es diversen Konvertierungen versucht, ohne Erfolg z.B.

 byte[] bytes = Encoding.UTF8.GetBytes(_unit);
            return Encoding.ASCII.GetString(bytes);

komme nicht drauf ... kann jemand helfen ?

Vielen dank Andreas

noch ?????

Versuch mal Encoding.Default
Nutzt dann die Windows Einstellungen, die meistens passen.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

   
byte[] bytes = Encoding.UTF8.GetBytes(_unit);  
return Encoding.ASCII.GetString(bytes);  

ASCII kennt 127 Zeichen, µ ist nicht dabei.

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

Na ich habe nun alle 2 hoch 4 Codierunsvarianten durchprobiert ..
kriegs nicht hin 😦

Aber Danke erstmal

Andreas

noch ?????

Hallo andi_bln,

wie liest du die Datei ein? StreamReader, etc. haben eine Überladung, bei der das Encoding angegeben werden kann.

Für Excel ist es meist Encoding.Default -- siehe Antwort von T-Virus.

Siehe auch [Tutorial] Dateioperationen: Alles über Dateien 2.2

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

Guten Morgen Gü,

ich lese die Dateien Wahlweise ein ( csv / Excel ) Excel direkt in ein Datatable, die csv mit dem Streamreader . Die Daten kommen z.B. °C in byte[0] = 176; bytes[1] = 67. Alles klar.
In der Ausgabedatei ( csv / Excel ) ist das maximal was ich darstellen kann, ein Fragezeichen ?C
Wie kann ich das Ausgabeformat so wählen, das ich die korrekte einheit bekomme ..?

Sehe den Wald vor Bäumen wahrscheinlich nicht mehr...

Andreas

noch ?????

Zeig mal die Zeile, wo du den StreamReader erstellst. (Vielleicht auch mal ein Beispiel-CSV, damit man dein Problem nachstellen kann.)

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

Guten Morgen..

hier ist sie :

using (StreamReader Sr = new StreamReader(ExcelPth,Encoding.Default))
                        {.....

Andreas

noch ?????

Hallo andi_bln,

wenn das die Datei in der Windows-Standardkodierung gespeichert wurde, so sollte es passen. Da es das aber offensichtlich nicht tut, wurde sie in einer anderen Kodierung gespeichert und diese gilt es zu ermitteln. Hast du obigen Link zum Datei-Tutorial gesehen (und dort die Links)?

Sonst häng mal so ein Beispiel-CSV an -- wie von LaTino vorgeschlagen.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

In deiner Quell und Zieldatei ist die Anzeige falsch, aber im Programm selbst korrekt?
Das klingt für mich eher danach, dass das Encoding in der Ein- und Ausgabedatei nicht korrekt gesetzt ist.

scheints wird die csv-Datei von Excel generiert. Kann schon sein, dass Excel ein exotischeres Encoding verwenden als Encoding.Default oder utf8.

Das Encoding einer TextDatei kann man nachgucken, wenn man notepad++ - hat, ein ziemlich fabelhafter TextEditor.

Der frühe Apfel fängt den Wurm.