简单问题! 关于取消转义"\"
我知道字符串 比如 string x= "c:\123\123" 的输出结果是 "c:123123"
string x = @"c:\123\123" 的输出结果是 "c:\123\123"
@可以对字符串使用,取消中间的转义符号 "\"的作用,但是现在的情况是,是变量的话怎么办?
比如:一个函数,接收到一个路径的参数X,我把X赋给Y,Y的输出就会有问题,而又没办法对Y使用 @符号取消转义
void function A(string x)
{
y=x; //其输出结果就会是 "c:123123"
//又不能用 y=@x;
}
高手们,有什么办法解决啊?????
[解决办法]
楼主有没有测试啊,估计是光凭想象的,
- C# code
private void button1_Click( object sender, EventArgs e ) { AAA( @"abc\133\fadf\asdfs" ); AAA( System.IO.Directory.GetCurrentDirectory() ); } private void AAA( string x ) { MessageBox.Show( x ); }
[解决办法]
^_^ LS说的对 LZ是在是杞人忧天了...
[解决办法]
^_^
[解决办法]
LZ啊...
字符串的转义实在编译时做的.
你那个y=x已经实在运行时了.
是不会再转义的.
[解决办法]
...哦 LZ一开始说的不清楚....
string v = "c:\\\\123\\\\123"; 或者 @"c:\\123\\123"
把v传给mysql就可以了
[解决办法]
传到数据库是否编码了,否则不会转化。c:\123\123能保存到数据库
[解决办法]
[解决办法]
你都说是mysql了 肯定是要编码的
就用这个办法
- C# code
public static string MySqlSqlEncode(string sqlString){ //... return sqlString.Replace(@"\",@"\\");}