请查看我的代码:
var translateArraySourceTexts = Textbox.Text.Split(new Char[] { '.' });
string requestBody = string.Format(body, from, "text/plain", translateArraySourceTexts[0], translateArraySourceTexts[1], ....., to);
发生的事情是,我有一个输入句子的文本框。我希望用“。”表示的每个句子分开句子。
然后,我想使用所有数组附加到字符串请求体。因为目前我正在使用“translateArraySourceTexts [0],translateArraySourceTexts [1] ,....... translateArraySourceTexts [9999]。
请与我分享您的想法!
答案 0 :(得分:1)
修改强>
正如@Blorgbeard所说OP可能想要使用string.Join
(实际上它可能是string.Concat
) - 在这种情况下代码看起来像这样:
var translateArraySourceTexts = Textbox.Text.Split(new Char[] { '.' });
var list = new List<string>(translateArraySourceTexts.Length + 4);
list.Add(body);
list.Add(from);
list.Add("text/plain");
list.AddRange(translateArraySourceTexts);
list.Add(to);
string requestBody = string.Concat(list);
//if the strings have to be separated by some other string:
string requestBody = string.Join("separator", list);
如果您只需要连接数组中的文本,也可以使用string.Concat
:
var translateArraySourceTexts = Textbox.Text.Split(new Char[] { '.' });
var str = string.Concat(translateArraySourceTexts); //use it however you want
当然,更简单的方法是从字符串中删除.
s(如果以后不需要句子数组)
var translateArraySourceTexts = Textbox.Text.Replace(".", "");
旧答案 - 可能对某些人有用
您可以制作List<string>
并将其传递给string.Format
(如果我理解正确的话):
var translateArraySourceTexts = Textbox.Text.Split(new Char[] { '.' });
var list = new List<string>(translateArraySourceTexts.Length + 3);
list.Add(from);
list.Add("text/plain");
list.AddRange(translateArraySourceTexts);
list.Add(to);
string requestBody = string.Format(body, list.ToArray());
我认为body
可能是一个格式字符串,而OP想要轻松地将数组传递给string.Format