问题描述
|
在此示例中:
var data = \"\";
Components.utils.import(\"resource://gre/modules/NetUtil.jsm\");
NetUtil.asyncFetch(filename,function(inputStream,status) {
if (!Components.isSuccessCode(status)) {
error(\"Error reading file. Details:\\n\" + status);
return;
}
// The file data is contained within inputStream.
// You can read it into a string with
data = NetUtil.readInputStreamToString(inputStream,inputStream.available());
});
我有:
错误:未捕获的异常:
[例外... \“必须有一个频道,
回调\“ nsresult:\” 0x80070057
(NS_ERROR_ILLEgal_VALUE)\“位置:
\“ JS框架::
chrome://myapp/content/js/utils.js
:: readFile ::第234行\“数据:否]
234行是指:
NetUtil.asyncFetch(filename,status) {
这个其他示例使用了IO xpcom,它不可用,在哪里可以找到它?
有没有一种简单的方法可以在Xul中读取一行文本的文件?
解决方法
您需要一个
nsIFile
(或可能是一个nsIChannel
)作为第一个参数(取决于您的Firefox版本)。有关更多详细信息,请参见文档。