问题:

  项目里面有一个 StreamReader来读取一个文件,使用OpenText() 方法。

  但是UNITY却提示 StreamReader类不包含OpenText()方法,并且也没有找到扩展方法。

原因:

  这就很奇怪了,StreamReader是System.IO下的类,里面的的确确是有这个方法的,但是为什么Unity却提示找不到方法呢?

  经过各种百度,最终找到问题的原因,因为当前Unity的平台使用的是WebPlayer平台,而webplayer平台是无法操作这些的,

  也就是对文件IO进行了限制,无法使用这些方法,因此Unity会报错。

解决方法:

  解决方法也很简单,只需要要切换到其他平台即可。

附上报错代码:报错为代码的第10行。

     public XCPlist(string fPath)
{
filePath = Path.Combine( fPath, "info.plist" );
if( !System.IO.File.Exists( filePath ) ) {
Debug.LogError( filePath +"路径下文件不存在" );
return;
} FileInfo projectFileInfo = new FileInfo( filePath );
StreamReader sr = projectFileInfo.OpenText();
while (sr.Peek() >= )
{
contents.Add(sr.ReadLine());
}
sr.Close(); }
05-25 11:38