我有一个很大的字符串要读,它总是不同的,但是一个字总是一样的。单词是MESSAGE
,所以如果我的字符串阅读器遇到该单词,则必须将整个字符串写入光盘。我做了一些代码,但它没有工作,if段永远不会触发,这里有什么问题?
string aLine;
StringReader strRead = new StringReader(str);
aLine = strRead.ReadLine();
if (aLine == "MESSAGE")
{
//Write the whole file on disc
}
答案 0 :(得分:6)
您可以使用包含,
if(aLine.Contains("MESSAGE")
{
}
答案 1 :(得分:2)
您可以使用String.Contains
if (aLine.Contains("MESSAGE"))
您也可以使用String.IndexOf但由于此处的索引不相关,因此最好使用Contains
。
if (aLine.IndexOf("MESSAGE") != -1)
如果您需要忽略大小写或Cultrue敏感度,那么IndexOf会为您提供重载方法,String.IndexOf(string value, StringComparison comparisonType)
if (aLine.IndexOf("MESSAGE", StringComparison.InvariantCultureIgnoreCase) != -1)
答案 2 :(得分:1)
您可以更改代码以使用Contains。
string aLine;
StringReader strRead = new StringReader(str);
aLine = strRead.ReadLine();
if (aLine.Contains("MESSAGE"))
{
//Write the whole file on disc
}
答案 3 :(得分:0)
我认为您可能正在寻找类似String.IndexOf的内容。在这种情况下,您可以使用以下内容:
if (aLine.IndexOf("MESSAGE") > -1)
{
....
}