我在C#以下字符串:
string ptFirstName = tboxFirstName.Text;
ptFirstName
返回: "John"
我想将其转换为'John'
我曾尝试以下的许多变化,但我从来没有能够替换单引号双引号:
ptFirstName.Replace("\"", "'");
任何人都可以告诉我吗?
我的目标是写一个XML文件:
writer.WriteAttributeString("first",ptFirstName); // where ptFirstName is 'John' in single quotes.
原因
ptFirstName.Replace("\"", "'");
不工作的是string
是不变的。 您需要使用
ptFirstName = ptFirstName.Replace("\"", "'");
代替。 这是一个关于ideone演示 。
我猜你没有键入"John"
到文本框中,但只是John
当您设置一个断点,并正在寻找在Visual Studio中的变量,你所看到的字符串各地报价?
如果是这样,那么意识到,报价也有不字符串的一部分,而只是表明你该值是一个字符串。 他们被调试器附加。 如果你这样做:
Console.WriteLine(ptFirstName);
你不会看到的报价。
writer.QuoteChar = '\'';
见http://msdn.microsoft.com/en-ca/library/system.xml.xmltextwriter.quotechar.aspx了解详情。