为什么IndexOf("<XXX")查询不出来?
有代码如下: 
 string   sTmp   =    " <flag> abc </flag>  "; 
 int   i   =   sTmp.IndexOf( " <flag>  "); 
 为什么i=0? 
 请高手指教!谢谢
------解决方案--------------------string sTmp =  " <flag> abc </flag>  "; 
 int i = sTmp.IndexOf( " <flag>  "); 
 为什么i=0?   
 ------------- 
 i=0是对的,因为 <flag> 确实位于sTmp的第一个位置,索引从0开始,所以是对的。 
 如果要查第二个可以从这个i再开始,就可以查到i后面的第一个 <flag> 的位置。
------解决方案--------------------在C#里的字符串索引开始是0而不是1。
------解决方案--------------------IndexOf如果查询不出来的话结果应该是-1, 0表示最开始的位置。
------解决方案--------------------i不等于0才叫怪呢,等于-1才是没有找到
------解决方案--------------------string sTmp =  " <flag> abc </flag>  "; 
 int i = sTmp.IndexOf( " <flag>  "); 
 这个为0 当然是对的了 C#和c++一样 字符串 是从 0位开始计算 
 IndexOf方法 返回的就是你查询的 字符 或 字符串 在 字符串中出现的第一个位置当然是对的了   
 string sTmp =  "PP <flag> abc </flag>  "; 
 int i = sTmp.IndexOf( " <flag>  "); 
 这里就是2了...