本文介绍了似乎无法用双引号保存字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 我需要用表示 目录路径的字符串更新数据库表(MySQL 4.0)(C:\ Temp \\ \\)但是不能让C#这样做。 我从文本框中获取字符串值(myStr = myText.Text)并将 传递给一个函数。 该函数构建一个将执行的SQL字符串: SQLString = String.Format(" UPDATE BSConfig" ; + " SET BSConfig_Inbound = \" {0} \",myStr); 这会将引号括在文本旁边,但重新调整斜线。我用@字符试了 (不知道你叫什么lol)和\"但是 给出了一个错误。 SQLString = String.Format(@" UPDATE BSConfig" + " SET BSConfig_Inbound = \" {0} \",myStr); //不允许 任何人帮助我? 问候, Steven ***通过开发人员指南 http://www.developersdex发送。 com *** 不要只是参加USENET ......获得奖励! 解决方案 开始时这是一个坏主意。 使用参数代替 - 它会让它变得多*更容易处理,因为你只需要担心获取正确的数据,没有 转义成字符串,然后将其设置为参数值。 - Jon Skeet - < sk *** @ pobox.com> http://www.pobox.com/~skeet 如果回复该团体,请不要给我发邮件 Hi,I need to update a DB Table (MySQL 4.0) with a string representing adirectory path (C:\Temp\In) but cannot get C# to do this.I take the string value from a textbox (myStr = myText.Text) and passthis to a function.The function builds up a SQL string which will be executed:SQLString = String.Format( "UPDATE BSConfig " +"SET BSConfig_Inbound = \"{0}\",myStr);This puts the quotes round the text, but remvoes the slashes. I triedusing the @ character (not sure what you call this lol) and the \" butwas given an error.SQLString = String.Format( @"UPDATE BSConfig " +"SET BSConfig_Inbound = \"{0}\",myStr); //Not allowedAnyone help me out ?Regards,Steven*** Sent via Developersdex http://www.developersdex.com ***Don''t just participate in USENET...get rewarded for it! 解决方案That''s a bad idea to start with.Use parameters instead - it''ll make it *much* easier to deal with, asyou only need to worry about getting the correct data, with noescaping, into a string, and then setting that as the parameter value.--Jon Skeet - <sk***@pobox.com> http://www.pobox.com/~skeetIf replying to the group, please do not mail me too 这篇关于似乎无法用双引号保存字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云! 08-22 17:14