私はfirefoxの拡張機能を作成しています。私は自分の拡張機能に "file:///home/blahblah/foo.txt"のようなファイルを開き、テキスト領域にあります。ファイル「のhttp://」とその簡単な、しかし、私は、「ファイル://」でこれを行うカントURIを使用してnsIFileオブジェクトを作成する方法
1
A
答えて
1
ローカルファイルで作業する場合、あなたが本当に「負荷」、それらをする必要があります。
var file = Components.classes["@mozilla.org/file/local;1"]
.createInstance(Components.interfaces.nsILocalFile);
file.initWithPath("/home/blahblah/foo.txt");
if (file.exists() == false) {
dup.value = “File does not exist”;
}
var istream = Components.classes["@mozilla.org/network/file-input-stream;1"]
.createInstance(Components.interfaces.nsIFileInputStream);
istream.init(file, 0x01, 4, null);
var fileScriptableIO = Components.classes["@mozilla.org/scriptableinputstream;1"].createInstance(Components.interfaces.nsIScriptableInputStream);
fileScriptableIO.init(istream);
// parse the xml into our internal document
istream.QueryInterface(Components.interfaces.nsILineInputStream);
var fileContent = "";
var csize = 0;
while ((csize = fileScriptableIO.available()) != 0)
{
fileContent += fileScriptableIO.read(csize);
}
fileScriptableIO.close();
istream.close();
含むFileContentが含まれています文字列としての内容
+1
これは非ASCII文字を処理しないことに注意してください。ここには簡単な方法も記載されています: https://developer.mozilla.org/index.php?title=en/Code_snippets/File_I%2F%2FO#Simple – sdwilsh
0
ローカルパスまたはnsIFileオブジェクトではなくファイルのURI文字列がある場合は、XMLHttpRequestを使用してファイルの内容を読み取ることもできます。
関連する問題
- 1. マルチプロセッシングを使用してnntplibオブジェクトを作成する方法
- 2. jaxbを使用してJavaオブジェクトを作成する方法
- 3. 3Dオブジェクトを使用してUIViewを作成する方法
- 4. enum要素を使用してオブジェクトを作成する方法
- 5. インデックス番号を使用してオブジェクトを作成する方法
- 6. DateTime.Parse()を使用してDateTimeオブジェクトを作成する方法
- 7. Uriオブジェクトを作成する最も一般的な方法は?
- 8. AggregationOutputオブジェクトを作成して後で使用する方法
- 9. JavaScriptを使用してイベントを作成してオブジェクトに送信する方法
- 10. NPAPIを使用して新しいJSオブジェクトを作成する方法は?
- 11. Prototypeを使用して新しいAJAXオブジェクトを作成する方法
- 12. devExpress ReportWizardを使用してレポートを作成し、オブジェクトにバインドする方法
- 13. Retrofitを使用してJSONArrayを含むJSONObjectのオブジェクトを作成する方法
- 14. Falcon RESTful APIを使用してURIを取得する方法
- 15. WebAuthenticationCoreManagerを使用してリダイレクトURIを指定する方法は?
- 16. 変数を使用してオブジェクトを動的に作成する方法
- 17. リフレクションパッケージを使用してクラスパスからオブジェクトを作成する方法
- 18. 静的ファクトリメソッドを使用してオブジェクトを作成する方法は?
- 19. テンプレートを使用して「多対多」オブジェクトを作成する方法は?
- 20. アクティブなレコードフィールドを使用してクラスのオブジェクトを作成する方法は?
- 21. jQueryを使用してJSONオブジェクトを配列に作成する方法は?
- 22. PHPを使用してメモリ内に共有オブジェクトを作成する方法は?
- 23. AngularJSを使用してhtml形式のjsonオブジェクトを作成する方法は?
- 24. forループを使用してオブジェクトの配列を作成する方法
- 25. 有効なフォームデータを使用してデータベースにオブジェクトを作成する方法は?
- 26. コンテキストアプリケーションのクラスパスを使用してGroovyShellオブジェクトを作成する方法
- 27. PHP pdoを使用してJSONネストされたオブジェクトを作成する方法
- 28. Pythonを使用してJSONでオブジェクトの配列を作成する方法は?
- 29. リフレクションを使用してジェネリックC#オブジェクトを動的に作成する方法
- 30. 配列からJavaを使用して各オブジェクトを作成する方法
読み込みたいファイル:URIがあり、そのためにnsIFileオブジェクトが必要だと言っていますか? – sdwilsh