【问题标题】:How to add directory location to mysql varchar?如何将目录位置添加到mysql varchar?
【发布时间】:2014-10-12 18:57:54
【问题描述】:

当我进行查询并添加位置字符串示例时:“'C:\SomeFolder\SubFolder\image.jpg'”, 查询将数据库中的值设置为“'C:SomeFolderSubFolderimagejpg'”然后我发现要保存位置,您需要有两个'\' 字符,(例如\\)才能将其计为目录位置,所以你能给我一个输入位置的字符串函数,该函数返回相同的字符串但带有双反斜杠吗?

input = 'C:\SomeFolder\SubFolder\image.jpg';
database need to save as 'C:\\SomeFolder\\SubFolder\\image.jpg';

【问题讨论】:

    标签: c# mysql directory


    【解决方案1】:

    只需用双斜线替换所有斜线:

    string input = @"C:\SomeFolder\SubFolder\image.jpg";
    string query = input.Replace(@"\", @"\\");
    

    【讨论】:

    • 字符串查询 = input.Replace(@"\", @"\\").Replace(@"\\\\",@"\\");
    • 比这更简单:Replace(@"\+", @"\\")
    【解决方案2】:

    试试:

    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);
    
    }
    

    【讨论】:

    • 很好的解决方案。相同的想法,但更易于理解的代码:string query = string.Join(@"\\", input.Split(new char[] {'\\'}, StringSplitOptions.RemoveEmptyEntries));
    猜你喜欢
    • 1970-01-01
    • 2018-02-21
    • 2016-08-26
    • 2017-01-09
    • 2019-11-03
    • 2021-10-25
    • 2017-02-04
    • 2020-01-21
    • 2021-03-29
    相关资源
    最近更新 更多