2012-08-16 5 views
3

tizen에 새 파일을 만들려고합니다. 내 코드시간 내에 파일 생성

var dir; 
var newDir = dir.createDirectory("vij"); 

입니다하지만 점점 오류가

TypeError: 'undefined' is not an object (evaluating 'dir.createDirectory') 

처럼 나는 타 이젠 문서에 나와 같은 예를 시도했다. 아이디어를하기 때문에 dirundefined 될 것입니다 때문에 당신이 실제로 당신이 오류가 정의되지 않은 dir 변수를 선언 한 코드에서 var dir;

답변

2

을주십시오.

이 그것을 할 수있는 방법이다 문서에 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했다 단지 맥락에서 문서 메이크업 감각에서 찾을 표시 예를 울부 짖는 소리. resolve가 호출됩니다. 당신은 위의 코드를 할 파일을 만들려면

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" 
    ); 
4

그냥과 같이 dir를 선언 : 모든

var dir = tizen.filesystem; 
2

첫째, 당신은 파일에 기록 Config.xml의 2 privilages 필요합니다
<tizen:privilege name="http://tizen.org/privilege/filesystem.write"/> <tizen:privilege name="http://tizen.org/privilege/filesystem.read"/>
수동으로 추가하거나 "previlages"탭을 사용하여 추가 할 수 있습니다. 그 후, 당신은 당신이 당신의 폴더가됩니다 결과 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" ); 를 사용 shpuld에서/옵션은/usr/미디어/이미지/

+0

전원 특권? – veritas

+1

@veritas, 물론 당신이 옳습니다. 이미 고쳤습니다. – Ender

2

이 당신이 타 이젠 웹 응용 프로그램에서 파일을 추가하는 방법입니다 :

는 파일 만들기 :

디렉토리에 상대적인 지정된 위치에서 빈 새 파일을 작성합니다. "파일 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

2

당신은 디렉토리 오브젝트를 사용하여 befor을 tizen.filesystem.resolve의 API에서 파일 또는 디렉터리 개체를 해결해야합니다.

코드에서 dir 개체는 빈 문자열 만 포함합니다.

그래서 먼저 tizen.filesystem.resolve API의 File (& 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 참조 서에 유용한 자습서 및 예제 코드가 있습니다.

파일 시스템 튜토리얼 https://developer.tizen.org/development/tutorials/web-application/tizen-features/base/filesystem#create

파일 시스템 API 참조 https://developer.tizen.org/dev-guide/latest/org.tizen.web.apireference/html/device_api/mobile/tizen/filesystem.html

그리고 아래는 가상 루트 테이블

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 
관련 문제