創建文件我試圖創建tizen新文件。我的代碼是在tizen
var dir;
var newDir = dir.createDirectory("vij");
但它越來越錯誤,如
TypeError: 'undefined' is not an object (evaluating 'dir.createDirectory')
我已經試過這是Tizen文檔中給出了同樣的例子。請給一個想法
創建文件我試圖創建tizen新文件。我的代碼是在tizen
var dir;
var newDir = dir.createDirectory("vij");
但它越來越錯誤,如
TypeError: 'undefined' is not an object (evaluating 'dir.createDirectory')
我已經試過這是Tizen文檔中給出了同樣的例子。請給一個想法
因爲在你的代碼中,你幾乎宣告未定義dir
的變量,你得到這個錯誤,因爲dir
將undefined
var dir;
的。
如果檢查API文檔中,這是做它的方式:
var documentsDir;
function onsuccess(files) {
for(var i = 0; i < files.length; i++) {
console.log("File Name is " + files[i].name); // displays file name
}
var testFile = documentsDir.createFile("test.txt");
if (testFile != null) {
testFile.openStream(
"w",
function(fs){
fs.write("HelloWorld");
fs.close();
}, function(e){
console.log("Error " + e.message);
}, "UTF-8"
);
}
}
function onerror(error) {
console.log("The error " + error.message + " occurred when listing the files in the selected folder");
}
tizen.filesystem.resolve(
'documents',
function(dir){
documentsDir = dir; dir.listFiles(onsuccess,onerror);
}, function(e) {
console.log("Error" + e.message);
}, "rw"
);
兩個以下所示的例子,你只需在上下文中的文檔是有意義的發現上面有tizen.filesystem。決心之稱。
var newDir = dir.createDirectory("newDir");
var anotherNewDir = dir.createDirectory("newDir1/subNewDir1");
所以如果你想創建你做上面的代碼文件(第一個完全)是該文件是建立在listFiles的的onSuccess回調,如果你想創建一個目錄喲需要這樣做:
tizen.filesystem.resolve(
'documents',
function(dir){
var newDir = dir.createDirectory("vij");
}, function(e){
console.log("Error" + e.message);
}, "rw"
);
只是聲明dir
像這樣:
var dir = tizen.filesystem;
首先,你需要在config.xml中2周的privilages寫入文件:
<tizen:privilege name="http://tizen.org/privilege/filesystem.write"/> <tizen:privilege name="http://tizen.org/privilege/filesystem.read"/>
可以手動添加,也可以使用「previlages」選項卡。 之後,你shpuld使用Filesystem API methods - createDirectory
tizen.filesystem.resolve( 'images', function(dir) { var dir; //Directory object obtained from filesystem API var newDir = dir.createDirectory("newDir"); console.log("Mount point Name is " + dir.path); }, function(e) { console.log("Error: " + e.message); }, "rw" );
因此,你將有你的文件夾中的/ opt/USR /媒體/圖片/
這是你如何在tizen Web應用程序添加一個文件:
創建一個文件:
創建的,是相對於目錄中的指定位置的空新的文件。 「文件的CreateFile(DOMString relativeFilePath);」
例子:
tizen.filesystem.resolve(
absolute_path,
function(dir){
dir.createFile(<filename>);
}, function(e) {
console.log("Error" + e.message);
}, "rw"
);
更多信息可以在下面這個鏈接中找到: http://howdoudoittheeasiestway.blogspot.in/2015/02/writing-and-reading-from-file-system.html
您需要解決從tizen.filesystem.resolve API文件或目錄對象befor使用目錄對象。
在你的代碼的目錄對象只包含空字符串。
因此,首先從tizen.filesystem.resolve API獲取文件(文件& dir)對象。
下面是tizen.filesystem.resolve API,你可以在FileSuccessCallback的onSuccess方法獲取文件對象。
void resolve(DOMString location, FileSuccessCallback onsuccess, optional ErrorCallback? onerror, optional FileMode? mode);
像下面的代碼。
tizen.filesystem.resolve(
'images',
function(dir) {
//do something what you want
console.log("Mount point Name is " + dir.path);
}, function(e) {
console.log("Error: " + e.message);
}, "r"
);
有關API參考的幫助教程和示例代碼。
及以下虛擬根表
images - the location for images
videos - the location for videos
music - the location for sounds
documents - the location for documents
downloads - the location for downloaded items
ringtones - the location for ringtones (read-only location)
camera - the location for the pictures and videos taken by a device (supported since Tizen 2.3)
wgt-package - the location for widget package which is read-only
wgt-private - the location for a widget's private storage
wgt-private-tmp - the location for a widget's private volatile storage
電源特權? – veritas 2014-11-21 07:17:06
@veritas,當然你是對的。已經修復。 – Ender 2014-11-21 07:43:40