我想将字符串形成为<repeat><daily dayFrequency="10" /></repeat>
其中""
中的值来自上面字符串10
中的textboxe.g。我在C#中形成了字符串
@"<repeat><daily dayFrequency=""+ txt_daily.Text + "" /></repeat>"
但我得到的输出为
<repeat><daily dayFrequency="+ txt_daily.Text+ " /></repeat>
。如何形成一个字符串,其中包含来自文本框的输入以及要包含在该字符串中的双引号。
答案 0 :(得分:2)
要将一个字符串的值插入另一个字符串,您可以考虑string.Format
:
string.Format("foo {0} bar", txt_daily.Text)
这比字符串连接更具可读性。
但是我强烈建议不要自己构建XML字符串。使用您的代码,如果用户输入包含<
符号的文本,则会导致XML无效。
使用XML库创建XML。
相关强>
答案 1 :(得分:0)
使用\
反斜杠转义它。把@
放在前面不会为你做
string str = "<repeat><daily dayFrequency=\"\"+ txt_daily.Text + \"\" /></repeat>";
Console.Write(str);
输出将是:
<repeat><daily dayFrequency=""+ txt_daily.Text + "" /></repeat>
答案 2 :(得分:0)
你可以这样做:
var str = String.Format(@"<repeat><daily dayFrequency="{0}" /></repeat>",
txt_daily.Text);
但最好有一个映射到这种格式的对象,serialize it to xml
答案 3 :(得分:0)
string test = @"<repeat><daily dayFrequency=" + "\"" + txt_daily.Text + "\"" + "/></repeat>";