擅长:python、mysql、java
<p>简而言之,当<code>driver.Create(...)</code>或<code>gdal.Open(...)</code>等返回<code>None</code>,这是gdal提出<code>IOError</code>或指示比给定的驱动名更无效的方法。(或潜在地表明发生了另一种错误,但这两种似乎最有可能)</p>
<p>(我将跳过关于我有多么不喜欢gdal的python绑定的咆哮…)</p>
<p>显然您没有做错什么(这个例子在我的机器上创建了一个全是零的.bin文件和一个格式正确的.hdr文件)。在</p>
<p>假设它创建了一个空文件,那么您似乎有写入该文件的权限,因此这不是IO问题。在</p>
<p>这意味着:</p>
<ol>
<li>您的gdal版本不支持ENVI文件(例如,<code>gdal.GetDriverByName("something random")</code>也将返回<code>None</code>)</li>
<li>Gdal在为ENVI数据集创建驱动程序时遇到了某种内部错误。在</li>
</ol>
<p>检查<code>gdalinfo formats</code>的输出,并确保gdal是在支持ENVI文件的情况下编译的(不过,我认为默认情况下应该是这样)。在</p>
<p>如果不能,请检查是否可以用所有零值编写geotiff(或任何其他格式)。如果没有任何工作,您需要重新安装gdal。在</p>
<p>希望你能找到正确的方向!在</p>