如何将反斜杠更改为双反斜杠?
How to change backslash to double backslash?
我的 TSQL 查询 return 一个像这样的字符串:
a\path\to\file.xml
我想把它放在这样的字符串中:
string path = reader.GetString(0); (return the query result of the first field => "a\path\to\file.xml")
所以当我想使用 path
时,我得到了这个 :
Console.WriteLine(path); //Output : `apathtofile.xml`
但我想要这样的值:a\path\to\file.xml
。
我已经尝试过了,因为我认为我必须将字符串中的反斜杠加倍:
path = reader.GetString(0).Replace("\", "\\"); -> do nothing
path = reader.GetString(0).Replace(@"\", @"\\"); -> do nothing
path = Regex.Replace(reader.GetString(0), "\", "\\") -> analyse de "\" - \ non conforme à la fin du modèle
path = Regex.Replace(reader.GetString(0), @"\", @"\\") -> analyse de "\" - \ non conforme à la fin du modèle
法语安装 -> 法语错误信息。抱歉
您必须选择从单个反斜杠生成双反斜杠:
string test = "your\string".Replace("\", "\\");
string test = "your\string".Replace(@"\", @"\");
该查询是由另一位开发人员创建的,他将其写入查询:
REPLACE(SubQuery.PATH,'/','\')
我只是把它改成:
REPLACE(SubQuery.PATH,'/','\')
而且工作正常。
if i undrstand it correctly- use any split function and then use
cursor to rebuild the string
--CREATE TABLE tstr(str varchar(10))
INSERT INTO tstr
SELECT * FROM [dbo].[fnSplitString]('a\path\to\file.xml','\') AS fss
DECLARE @x varchar(20)=(SELECT TOP 1 str from tstr)
SELECT * FROM tstr
DECLARE cur CURSOR
FOR SELECT str
FROM [dbo].[tstr] AS t
DECLARE @i varchar(10)
DECLARE @a varchar(100)=''
OPEN cur
FETCH NEXT FROM cur INTO @i
WHILE @@FETCH_STATUS=0
BEGIN
SET @a=@a+@i+'\'
FETCH NEXT FROM cur INTO @i
END
SELECT left(@a,len(@a)-2)
CLOSE cur
DEALLOCATE cur
TRUNCATE TABLE [dbo].[tstr]
我的 TSQL 查询 return 一个像这样的字符串:
a\path\to\file.xml
我想把它放在这样的字符串中:
string path = reader.GetString(0); (return the query result of the first field => "a\path\to\file.xml")
所以当我想使用 path
时,我得到了这个 :
Console.WriteLine(path); //Output : `apathtofile.xml`
但我想要这样的值:a\path\to\file.xml
。
我已经尝试过了,因为我认为我必须将字符串中的反斜杠加倍:
path = reader.GetString(0).Replace("\", "\\"); -> do nothing
path = reader.GetString(0).Replace(@"\", @"\\"); -> do nothing
path = Regex.Replace(reader.GetString(0), "\", "\\") -> analyse de "\" - \ non conforme à la fin du modèle
path = Regex.Replace(reader.GetString(0), @"\", @"\\") -> analyse de "\" - \ non conforme à la fin du modèle
法语安装 -> 法语错误信息。抱歉
您必须选择从单个反斜杠生成双反斜杠:
string test = "your\string".Replace("\", "\\");
string test = "your\string".Replace(@"\", @"\");
该查询是由另一位开发人员创建的,他将其写入查询:
REPLACE(SubQuery.PATH,'/','\')
我只是把它改成:
REPLACE(SubQuery.PATH,'/','\')
而且工作正常。
if i undrstand it correctly- use any split function and then use cursor to rebuild the string
--CREATE TABLE tstr(str varchar(10))
INSERT INTO tstr
SELECT * FROM [dbo].[fnSplitString]('a\path\to\file.xml','\') AS fss
DECLARE @x varchar(20)=(SELECT TOP 1 str from tstr)
SELECT * FROM tstr
DECLARE cur CURSOR
FOR SELECT str
FROM [dbo].[tstr] AS t
DECLARE @i varchar(10)
DECLARE @a varchar(100)=''
OPEN cur
FETCH NEXT FROM cur INTO @i
WHILE @@FETCH_STATUS=0
BEGIN
SET @a=@a+@i+'\'
FETCH NEXT FROM cur INTO @i
END
SELECT left(@a,len(@a)-2)
CLOSE cur
DEALLOCATE cur
TRUNCATE TABLE [dbo].[tstr]