Laden...

@-Zeichen vor String

Erstellt von Wax vor 16 Jahren Letzter Beitrag vor 16 Jahren 3.924 Views
Wax Themenstarter:in
731 Beiträge seit 2006
vor 16 Jahren
@-Zeichen vor String

Hallo, ich bin mir sicher das zu meiner Frage eine Menge im Internet oder speziell in diesem Forum zu finden ist, doch leider ist die Suche danach nur schwer möglich, da ich nicht weiß um was es geht. 🙂

Ich habe gerade in einem Quellcode folgende Zeile gesehen:


string testString = path+@"\test.txt";

Könnt ihr mir bitte sagen was es mit dem @-Zeichen auf sich hat?
Meine Vermutung liegt ja bei Konfigurationsdateien und deren Zugriff, doch ich bin mir nicht sicher. Konnte bisher leider nichts passendes dazu im Netz finden.

MfG
wax

K
174 Beiträge seit 2006
vor 16 Jahren

Hallo Wax,

das @ vor einem Literalstring soll als Erleichterung bei Escape-Sequenzen dienen bzw. verbietet er es dir in dem nachfolgenden String Escape-Sequenzen wie z.B.: \n zu verwenden.

Beispiel:


if(@"\" == "\\")
    Console.WriteLine("Diese Zeile wird immer geschrieben!");

Gruß,
Kani

//EDIT:
Steht mit sicherheit aber auch in der MSDN!

Wax Themenstarter:in
731 Beiträge seit 2006
vor 16 Jahren

Hallo Kani.
Cool, schon wieder was gelernt. Danke 👍 😁

484 Beiträge seit 2006
vor 16 Jahren

Hier wurde das Thema auch schon mal behandelt @ vor String

Gruß Jörg

795 Beiträge seit 2006
vor 16 Jahren

Das @-Zeichen steht dafür, dass man bestimmte Zeichen im String nicht "escapen" muss.

ohne das @ müsste man das schreiben:

string testString = path+"\\test.txt";

Das Doppelte \ steht dann für ein Einzelnes da das \ normalerweise escape-Sequenzen einleitet wie z.B. "\n" steht für einen Absatz.

Der Code

MessageBox.Show("Erster Absatz\nZweiter Absatz");

würde also Folgende ausgabe enthalten:

Erster Absatz
Zweiter Absatz

Würde man nun ein @ davor schreiben, also so:

MessageBox.Show(@"Erster Absatz\nZweiter Absatz");

wäre die Ausgabe:

Erster Absatz\nZweiter Absatz

Gruß, Christian

//EDIT: zu spät ....

`There are 10 types of people in the world: Those, who think they understand the binary system Those who don't even have heard about it And those who understand "Every base is base 10"`
Wax Themenstarter:in
731 Beiträge seit 2006
vor 16 Jahren

Gleich so viele Antworten. 👍

Doch dann auch noch ein Thread mit "fast" gleichem Titel schäm 8o

Nun erklärt sich auch weshalb nur ein"" im String verwendet wird. Das ich das bisher noch nirgendwo gesehen habe.... echt unglaublich.

Schönen Tag noch euch allen

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo Wax,

kannst dich gleich noch mehr schämen, es steht auch in der FAQ: [FAQ] Was bedeutet das @ (=at) vor String-Literalen? 🙂

herbivore