file load contents
主要範例
#!/usr/bin/gjs
const Gio = imports.gi.Gio;
var file = Gio.File.new_for_path("data.txt");
try {
var [ok, data, etag] = file.load_contents(null);
if (ok) {
print(data);
//print(data.toString());
//print(data.toString('utf-8'));
}
} catch (e) {
print("Error: ", e.message);
}
注意:
- 「load_contents」回傳的第二個參數「data」是「ByteArray」。
- 「data.txt」內容的編碼若是「utf-8」,直接使用「print(data)」。 等同於「print(data.toString())」或是「data.toString('utf-8')」。
- 「data.txt」內容的編碼若是「big5」,則要改用「print(data.toString('big5'));」。
Api
- Gio-2.0 / Gio.File / Gio.File.load_contents
- GNOME / gjs / doc / gjs-byte-array.txt
- GNOME / gjs / byteArray.cpp
Big5 讀檔範例
#!/usr/bin/gjs
const Gio = imports.gi.Gio;
var file = Gio.File.new_for_path("big5.txt");
try {
var [ok, data, etag] = file.load_contents(null);
if (ok) {
print(data.toString('big5'));
}
} catch (e) {
print("Error: ", e.message);
}
網頁範例
#!/usr/bin/gjs
const Gio = imports.gi.Gio;
var file = Gio.File.new_for_uri("https://wiki.gnome.org/Projects/Gjs");
try {
var [ok, data, etag] = file.load_contents(null);
if (ok) {
print(data);
}
} catch (e) {
print("Error: ", e.message);
}