我用於查找文本詞與它的indexOf返回帶有字段字和數量對象的名單得到了功能,我想使用功能不同的文字和語言來這樣的IM創建任務並獲得IndexOutOfRange該行:System.IndexOutOfRangeException在功能findinding在文本與詞的IndexOf
var r = Check_text(tnw.text[i], word);
更多瞭解這就是我的功能:
public static List<wordsinf> Check_text(string text,string[] words)
{
List<wordsinf> result = new List<wordsinf>();
var pos = 0;
var quantity = 0;
foreach (string wf in words)
{
pos = 0;
quantity = 0;
while (true)
{
var foundPos = text.IndexOf(wf, pos);
if (foundPos == -1)
{
break;
}
pos = foundPos + 1;
if (foundPos >= 0)
{
quantity++;
}
}
result.Add(new wordsinf(wf, quantity));
}
return result;
}
這就是輸入例如:
- word {string[2]} string[]
[0] "asd" string
[1] "qwe" string
- tnw.text {string[2]} string[]
[0] "asd qwe ssd www " string
[1] "asd asd qwe sss " string
誰能告訴我這個問題的解決方案?什麼我做錯了那裏。 也有與任務的一部分:
var numtasks = tnw.text.Length;
AnalyzeObj[] analyzeobjs = new AnalyzeObj[numtasks];
var word = tnw.words.Split(',');
Task[] tasks = new Task[numtasks];
Console.WriteLine(word);
Console.WriteLine(tnw.text);
for (var i = 0; i < numtasks; i++)
{
tasks[i] = new Task(() => {
var r = Check_text(tnw.text[i], word);
analyzeobjs[i].text = tnw.text[i];
analyzeobjs[i].WordInfos=r;
analyzeobjs[i].id=Guid.NewGuid();
analyzeobjs[i].FindWords = word;
});
tasks[i].Start();
}
Task.WaitAll(tasks);
的可能的複製[什麼是IndexOutOfRangeException,如何解決?(http://stackoverflow.com /問題/ 20940979 /什麼-是-indexoutofrangeexception和 - 如何-DO-I-FIX-它) –
變化'爲(VAR I = 0; I
3615
以及我只是想你了,現在我得到其他兩種例外信息:System.ArgumentException,我的理解這意味着像任務之一是零而另一個例外是像System.NullReferenceException – vtarbinskyi