public void CheckFileType(string directoryPath)
{
IEnumerator files = Directory.GetFiles(directoryPath).GetEnumerator();
}
错误:错误 1 使用泛型类型“System.Collections.Generic.IEnumerator”需要 1 个类型参数
public void CheckFileType(string directoryPath)
{
IEnumerator files = Directory.GetFiles(directoryPath).GetEnumerator();
}
错误:错误 1 使用泛型类型“System.Collections.Generic.IEnumerator”需要 1 个类型参数
您需要声明要枚举的类型:
IEnumerator<string> files = Directory.GetFiles(directoryPath).GetEnumerator();
如果您不确定类型,请使用var
:
var files = Directory.GetFiles(directoryPath).GetEnumerator();
那么编译器将为您完成所有艰苦的工作。
IEnumerator<T>
是通用的并且需要一个类型,例如:
IEnumerator<string> files = Directory.GetFiles(directoryPath).GetEnumerator();
您所指的类型是通用的,这意味着您需要提供一个通用参数,如下所示:
IEnumerator<string> files = [...];
碰巧有一个非通用版本IEnumerator
,但它在System.Collections
命名空间中,而不是System.Collections.Generic
命名空间中。如果您想使用非通用版本(您确实不应该这样做;您应该使用通用版本),您需要using
为该命名空间添加一个或使用完全限定名称。