C# 如何将目录位置添加到mysql varchar?
当我进行查询并添加位置字符串示例:“'C# 如何将目录位置添加到mysql varchar?,c#,mysql,directory,C#,Mysql,Directory,当我进行查询并添加位置字符串示例:“'C:\SomeFolder\SubFolder\image.jpg”, 查询将数据库中的值设置为“'C:SomeFolderSubFolderimagejpg”,然后我发现要保存位置,需要有两个'\'字符(如此\\)才能将其计为目录位置,那么,你能给我一个字符串函数,输入位置,函数返回相同的字符串,但有两个反斜杠吗 input = 'C:\SomeFolder\SubFolder\image.jpg'; database need to save as 'C
C:\SomeFolder\SubFolder\image.jpg
”,
查询将数据库中的值设置为“'C:SomeFolderSubFolderimagejpg
”,然后我发现要保存位置,需要有两个'\'
字符(如此\\
)才能将其计为目录位置,那么,你能给我一个字符串函数,输入位置,函数返回相同的字符串,但有两个反斜杠吗
input = 'C:\SomeFolder\SubFolder\image.jpg';
database need to save as 'C:\\SomeFolder\\SubFolder\\image.jpg';
只需将所有斜杠替换为双斜杠:
string input = @"C:\SomeFolder\SubFolder\image.jpg";
string query = input.Replace(@"\", @"\\");
尝试:
字符串查询=输入。替换(@“\”,@“\”)。替换(@“\ \ \”,@“\”);比这更简单:
Replace(@“\+”,@“\\”)
好的解决方案。相同的想法,但更容易理解的代码:stringquery=string.Join(@“\\”,input.Split(新字符[]{'\\},StringSplitOptions.removemptyentries))代码>
public string EscapePathSeparators(string path)
{
StringBuilder sb = new StringBuilder();
foreach (var segment in path.Split(new char[]{ ‘\’ }, StringSplitOption.RemoveEmptyEntries))
{
sb.Append("\\" + segment);
}
return sb.ToString().Substring(2);
}