String ersetzen äquivalent für die VB-Anweisung (";" & vbcrlf) in C#
Duplizieren-Funktion in C# von einigen alten VB-code ausführen string-manipulation auf E-Mail-text. Ich bin mir nicht sicher, ob dies in allen Fällen funktionieren...kann das jemand bestätigen meine Gedanken auf die richtige C# - code zu verwenden? Sind diese äquivalent?
Original VB:
function FixText(Mail_Text)
dim Clean_Text
Clean_Text = Mail_Text
Clean_Text = Replace(Clean_Text, "=" & vbcrlf, "")
Clean_Text = Replace(Clean_Text, ";" & vblrcf, "")
` ... other stuff
FixText = Clean_Text
End Function
Neue C#:
public String FixText(Mail_Text)
{
String Clean_Text = Mail_Text;
Clean_Text = Clean_Text.Replace("=" + System.Environment.NewLine, "");
Clean_Text = Clean_Text.Replace(";" + System.Environment.NewLine, "");
//... other stuff
return Clean_Text;
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Technisch, sind Sie nicht.
vbcrlf
ist eine string-Konstante gleich"\r\n"
in C#.System.Environment.NewLine
ist eine Eigenschaft, die zurück"\r\n"
auf Windows-Systemen, gibt aber"\n"
auf Unix-basierten Systemen (Linux und OS X) und generell bedeutet "die Zeile-Abschlusszeichen für die aktuelle Plattform."vbcrlf
wird immer das Windows CR+LF line Terminators, unabhängig davon, auf welcher Plattform der code ausgeführt wird.Welche Sie verwenden sollten, hängt letztlich davon ab, wie dieser text verwendet werden, und dies kann nicht ausreichend abgeleitet werden können, andere Informationen in deiner Frage.
Environment.NewLine
wäre falsch in diesem Zusammenhang. Es hängt alles davon ab, welche Art von Daten, die Sie hier bauen.)Verwendung von C# escape-Sequenzen:
\r
ist die escape-Sequenz für einen Zeilenumbruch,\n
ist die escape-Sequenz für eine neue Zeile.vbcr
,vblf
, undvbcrlf
sind alle gültigen Konstanten. Ich vermutete, dassvblrcf
war nur ein Tippfehler, aber es ist possble.i, dass eine andere variable definiert an anderer Stelle. Sind Sie auf der sicher, dass der original-code funktioniert wie du es gepostet hast?