Autor Beitrag
ani
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 77

Windows Vista Home Premium
C#(VS 2008)
BeitragVerfasst: Do 27.10.05 15:54 
So jungs und mädels,

ich hab hier ein byte[] und will diese geschichte umwandeln in einen string.
Habs schon über Object und parse und (string)byte[] probiert, geht aber alles nicht.

Ausgangspunkt ist dieser --> Word-Datei ;)
ich will alle zeichen einlesen (inklusive ß,ü,ö,ä) und das macht mir nur der FileStream-Hans, der wiederum speichert das ganze Zeichengedöhns in einem byte[] ab und den
byte[]-Hans will ich in einen string konvertieren und abspeichern, sodass ich in meiner speicherDatei meine ß,ü,ö,ä habe

......bekomms aber nich hin :)
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 27.10.05 16:02 
Hallo!

Habe das bei einem Stream mal so gemacht:
ausblenden C#-Quelltext
1:
2:
UTF8Encoding asen=new UTF8Encoding();
char[] ch = asen.GetChars(b); //aus den Bytes wieder Buchstaben machen


Statt GetChars gibt's auch GetString.

Grüße
Christian

//edit: Gibt auch noch andere Encoding-Dinger ;-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Robert_G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 416


Delphi32 (D2005 PE); Chrome/C# (VS2003 E/A, VS2005)
BeitragVerfasst: Do 27.10.05 16:06 
Wie die Überschrift schon zeigt ( :lol: ) bin ich nicht groß mit Arrayfrickeleien...
Ich würd's so umständlich versuchen: :oops:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
byte[] bytes = new byte[3] {656667};

char[] chars = new char[bytes.Lenth];
Array.CopyTo(bytes, chars, bytes.Length);

string endlich = new StringBuilder(bytes.Length).Append(chars).ToString();


Und schon zeigt Christian, wie wenig Peilung ich doch davon habe. :) :nut:
ani Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 77

Windows Vista Home Premium
C#(VS 2008)
BeitragVerfasst: Do 27.10.05 16:08 
und wo ist da mein byte[]? :)

etwa da --> new UTF8Encoding( hier );
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 27.10.05 16:12 
Mein "b" ist Dein byte[] ;-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
ani Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 77

Windows Vista Home Premium
C#(VS 2008)
BeitragVerfasst: Do 27.10.05 16:16 
using System.??? :D

für das UTFEncoding
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 27.10.05 16:21 
Ein Blick in die Doku (:roll:) ergibt: System.Text

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
ani Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 77

Windows Vista Home Premium
C#(VS 2008)
BeitragVerfasst: Fr 28.10.05 08:43 
:x

hatte vergessen, dass es so was gibt :)

vielen dank !
ani Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 77

Windows Vista Home Premium
C#(VS 2008)
BeitragVerfasst: Fr 28.10.05 10:01 
Also in meinem char[] steht alles schön und wunderbar drinne so wie ichs auch gern hätte.

Nur! ;) wenn ich aus meinem Array einen String mache nimmt der mir nur die ersten ca.10 Zeichen. Der Grund könnte vielleicht sein, dass hinter den 10 Zeichen erst mal nix drin steht, also ASCII 0 , sodass er nur bis zum ersten NUL in einen String umwandelt
--> stimmt das?

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
char[] chars = new char[byte.Length];  
Array.Copy(byte,0,chars,0,byte.Length);

String endlich = new String(chars);
label1.Text = endlich;



ps: das mit dem UTF8Encoding ging nicht
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Fr 28.10.05 10:03 
user profile iconani hat folgendes geschrieben:
ps: das mit dem UTF8Encoding ging nicht
Bei mir läuft es in einem Programm. Was heisst denn "ging nicht"? Falsches Ergebnis? Gar kein Ergebnis? Wenn Du genauer wirst und evtl. ein wenig Source zeigt, kann man Dir helfen ;-)

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
ani Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 77

Windows Vista Home Premium
C#(VS 2008)
BeitragVerfasst: Fr 28.10.05 10:13 
ausblenden C#-Quelltext
1:
2:
3:
UTF8Encoding asen = new UTF8Encoding();  
string ausgabe = asen.GetString(*popo*);
label1.Text = ausgabe;


-->  steht bei mir in meinem String obwohl die Zeichen nicht so vorkommen