在c#中的字符串中使用"*"

Md *_*ker 1 .net c# visual-studio

我想在字符串中使用"*".

我想存储一个像这样的字符串

string strin="e list * "*"\r\n";
Run Code Online (Sandbox Code Playgroud)

但Visual studio显示此行的错误,不编译.错误:

运算符'*'不能应用于'string'和'string'类型的操作数

我怎么用这个?

Ode*_*ded 6

问题不在于*,但"你想在字符串中看起来也有.他们需要逃脱:

string strin = @"e list * ""*""\r\n";
Run Code Online (Sandbox Code Playgroud)

注意:上面的逐字字符串文字将\r\n嵌入字符串- 而不是windows行尾.为了追加一个结尾,我建议追加Environment.NewLine.

或者,如果不使用逐字字符串文字:

string strin = "e list * \"*\"" + Environment.NewLine;
Run Code Online (Sandbox Code Playgroud)

如果不这样做,表达式将@"e list * "*"\r\n"被解释为字符串"e list * "乘以(*)乘以()"\r\n".由于*未在字符串上定义运算符,因此您将收到错误.


Mik*_*all 6

你需要在字符串中转义双引号,这样会更好:

string strin="e list * \"*\"\r\n";
Run Code Online (Sandbox Code Playgroud)

我的假设是你想要一个真正的回车/换行,而不是文字"\ r \n"字符,这就是为什么我剥去了'@'符号