vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: RTrim beim Auslesen von Char-Variablen 
Autor: Preisser
Datum: 07.06.13 16:28

Hallo,

Manfred X schrieb:
Zitat:


Asc/Chr verwenden eine beliebig vorzugebende CodePage für die
Konvertierung.
Das ist ihr Einsatzgebiet. Ihre entsprechende Anwendung ist
weder obsolet
noch unmodern oder falsch.

Nun, das sehe ich nicht so. Wann macht es denn deiner Meinung nach Sinn, mit Asc() oder Chr() einzelne Zeichen in Bytes oder umgekehrt zu konvertieren?

Wenn man Zeichen in Bytes konvertieren will, dann doch meistens in Anwendungsfällen wie das Speichern einer Textdatei. Und dafür gibt es ja die Encoding-Klasse, die ein effizientes Konvertieren von Strings in ein Bytearray erlaubt.

Manchmal will man aber nur den Wert eines Chars erhalten, dafür sollte man in VB.Net die AscW()-Methode bzw. ChrW() verwenden (und in C# kann man einfach das char in ein int konvertieren).
Beispielsweise wenn man zufällige Buchstaben erzeugen will wie in deinem Codebeispiel.

Ich kann in .Net keine sinvolle Anwendung von Chr() und Asc() sehen. Ich habe in meinen bisherigen C#-Programmen auch noch nie das Bedürfnis verspürt, jedes Zeichen eines Strings wie mit Asc() einzeln in ein Byte zu konvertieren, sondern dafür immer sowas wie Encoding.GetBytes() verwendet bzw. einen StreamReader, der die Bytes eines darunterliegenden Streams unter Verwendung des angegebenen Encodings liest. Man muss eben unterscheiden zwischen der Byte-Ebene und der Character-/String-Ebene, was mit Asc() und Chr() m. E. nicht sonderlich gut geht.

(Wenn man sich die Implementierung von Asc() im Microsoft-Framework ansieht, macht diese auch nichts anderes, als ein Char-Array mit einem Element (das übergebene Char) zu erstellen und dieses über die Encoding.Default in ein Byte-Array zu konvertieren, und das erste Byte (bzw. zwei Bytes bei einem Multibyte-Zeichensatz als 16-Bit-Ganzzahl) zurückzugeben.

Aufgrund dieser Funktionweise von Asc() und Chr() könnte man meiner Ansicht nach als Classic-VB-Umsteiger auf die Idee kommen, dass man in VB.Net auf String-Ebene mit dem lokalen Zeichensatz arbeitet - aber dem ist ja nicht so, denn Strings in .Net sind immer in Unicode.)

Beitrag wurde zuletzt am 07.06.13 um 16:39:49 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
RTrim beim Auslesen von Char-Variablen2.112Jennsy07.06.13 08:04
Re: RTrim beim Auslesen von Char-Variablen1.556DotNetErbse07.06.13 11:22
Re: RTrim beim Auslesen von Char-Variablen1.497ModeratorDaveS07.06.13 11:53
Re: RTrim beim Auslesen von Char-Variablen1.512Manfred X07.06.13 12:12
Re: RTrim beim Auslesen von Char-Variablen1.645Preisser07.06.13 14:14
Re: RTrim beim Auslesen von Char-Variablen1.720Manfred X07.06.13 14:50
Re: RTrim beim Auslesen von Char-Variablen1.748Preisser07.06.13 15:24
Re: RTrim beim Auslesen von Char-Variablen1.547Manfred X07.06.13 15:46
Re: RTrim beim Auslesen von Char-Variablen1.557Preisser07.06.13 15:54
Re: RTrim beim Auslesen von Char-Variablen1.671Manfred X07.06.13 16:07
Re: RTrim beim Auslesen von Char-Variablen1.498Preisser07.06.13 16:28
Re: RTrim beim Auslesen von Char-Variablen1.598Manfred X07.06.13 16:39
Re: RTrim beim Auslesen von Char-Variablen1.682Preisser07.06.13 16:49
Re: RTrim beim Auslesen von Char-Variablen1.467Manfred X07.06.13 17:51
Re: RTrim beim Auslesen von Char-Variablen1.539Preisser07.06.13 18:01
Re: RTrim beim Auslesen von Char-Variablen1.624Jennsy10.06.13 07:20
Re: RTrim beim Auslesen von Char-Variablen1.514argoped14.06.13 11:48
Re: RTrim beim Auslesen von Char-Variablen1.482Jennsy14.06.13 12:12

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel