Autor |
Beitrag |
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 22.06.11 21:46
Hallo Leute,
habe mir ein Tool geschrieben das ganz bestimmte Sachen aus einer Textdatei herausliest, das funktioniert auch alles ganz super aber sobald ein Wort das rausgelesen wird ein Sonderzeichen wie z.b. ' hat liest er an der Stelle nur seltsame Buchstaben aus
Kennt da jemand eine Lösung wie ich mit dem StreamReader auch Sonderzeichen herauslesen kann ?
Grüße BleachRukia
|
|
Christoph1972
      
Beiträge: 690
Erhaltene Danke: 16
VS2015 Pro / C# & VB.Net
|
Verfasst: Do 23.06.11 00:44
Hi, ich denke du musst deinem SR sagen welche Kodierung er lesen soll, also ASCII oder so. Stichwort Encoding. Schau dir mal die Überladungen von dem StreamReader Konstruktor an.
_________________ Gruß
Christoph
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 21:14
Hallo,
bin beim SR alle System.Text.Encoding durchgegangen aber keines hat funktioniert
Bei diesen Buchstaben: § ´ ä ö ü ß gibt der SR immer nur ein Fragezeichen zurück
Grüße BleachRukia
|
|
Christoph1972
      
Beiträge: 690
Erhaltene Danke: 16
VS2015 Pro / C# & VB.Net
|
Verfasst: Do 23.06.11 21:24
Hi,
passiert das auch, wenn du eine Datei einliest, die du mit z.B. dem Notepad erstellt hast?
_________________ Gruß
Christoph
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 21:39
Hallo,
nein wird ganz normal angezeigt, habe auch im Netz jetzt alles zum Thema durchgesucht aber nichts funktioniert davon
Ich beschreibe mal genauer um was es geht, wenn ich im VLC eine Playlist erstellte im Format M3U, habe ich mit diesem Code versucht:
C#-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| switch (info.Extension) { case ".m3u": StreamReader m3uSource = new StreamReader(o.FileName); string m3uZeile; while ((m3uZeile = m3uSource.ReadLine()) != null) { if (m3uZeile.StartsWith("C:")) { this.richTextBox1.Text += m3uZeile; this.richTextBox1.Text += "\n"; } } break; } |
die Playlist anzuzeigen, das ist mir auch alles super gelungen aber wenn es dann um diese Sonderzeichen geht:
§ ´ ä ö ü ß, bekomme ich nur Fragezeichen an dieser Stelle wieder, das heißt ich kann auch nicht Replace benutzen um sie danach auszutauschen weil ja alle genau das selbe Fragezeichen haben und ich nicht weiß, was was ist
Grüße BleachRukia
|
|
Christoph1972
      
Beiträge: 690
Erhaltene Danke: 16
VS2015 Pro / C# & VB.Net
|
Verfasst: Do 23.06.11 21:52
Das ist doch schon mal sehr gut das das so ist, dann ist dein Code schonmal OK und du kannst davon ausgehen, das es am Encoding liegt.
Öffne die besagte Datei mal mit Notepad++ und lass dir das Encoding anzeigen, damit gehst du dann bei Googel auf die Suche wie du das einlesen kannst. Ich hatte einen solchen Fall mal in die andere Richtung StreamWriter, ein alter Server konnte nicht mit der UTF8 Kodierung, die ich via FTP an ihn gesendet habe.
_________________ Gruß
Christoph
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 21:56
Hallo,
habe die m3u Datei mit Notepad geöffnet, aber wo kann ich jetzt sehen welche Codierung das ist ?
Bin auf Format gegangen aber da stand nichts
Liebe Grüße BleachRukia
|
|
Christoph1972
      
Beiträge: 690
Erhaltene Danke: 16
VS2015 Pro / C# & VB.Net
|
Verfasst: Do 23.06.11 22:06
Notepad oder Notepad++ ?
Guckst du hier 
_________________ Gruß
Christoph
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 22:09
Das normale Notepad, das standart bei Windows dabei ist.
Grüße BleachRukia
|
|
Christoph1972
      
Beiträge: 690
Erhaltene Danke: 16
VS2015 Pro / C# & VB.Net
|
Verfasst: Do 23.06.11 22:14
Du solltest den anderen runter laden, ich hoffe das hilft dir dann!?
_________________ Gruß
Christoph
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 22:20
Hallo,
habe mir Notepad++ runtergeladen und installiert, habe dann die Datei damit geöffnet, bei Kodierung ist Ansi makiert !?
Grüße BleachRukia
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 22:28
Hallo,
habe es jetzt mal Ansi gegooglet und habe es noch einmal mit Default probiert und jetzt geht das, keine Anhnung wieso er das vorhint nicht gemacht hat aber jetzt geht es lol, mein Computer muss ihrgendetwas geraucht haben ^^
C#-Quelltext 1:
| StreamReader m3uSource = new StreamReader(o.FileName, Encoding.Default); |
Liebe Grüße BleachRukia
|
|
Christoph1972
      
Beiträge: 690
Erhaltene Danke: 16
VS2015 Pro / C# & VB.Net
|
Verfasst: Do 23.06.11 22:40
BleachRukia hat folgendes geschrieben : | mein Computer muss ihrgendetwas geraucht haben ^^ |
Oder du ?
Na gut das es jetzt geht!
_________________ Gruß
Christoph
|
|
BleachRukia
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Do 23.06.11 22:51
Hallo,
wenn ich so genauer darüber nachdenke glaube ich das ich der jeniger war der etwas geraucht hat lol, wie ich voher versucht hatte von einer WPL Playlist, die Liste herauszulesen hat er bei dem ' einen Code dadurch ersetzt, hatte gelaubt das das der SR wäre, war aber von Anfang an die Schuld des WMPs wie ich feststellen musste, das muss ich dann wohl durch Replace wieder rückgänig machen
Liebe Grüße BleachRukia
|
|