【发布时间】:2018-09-03 02:54:48
【问题描述】:
我在 Windows 10 上,尝试使用 Tabris.js 读写一个简单的文本文件
console.log 报告:
/local/src/hello.txt
Error: No such file or directory: /local/src/hello.txt
代码:
const {fs} = require('tabris');
let path=fs.filesDir + '/src/hello.txt'
console.log(path)
fs.writeFile(path, 'Hello World!', 'ascii')
.then(() => console.log('file written:', path))
.catch(err => console.error(err));
Tabris.js 参考:
澄清:
如果我能做到这一点,我会做一个非常简单的教程。
Tabris 运行良好,没有任何问题,但由于查找文件时出错,我无法读取或写入文件。我已经尝试了十几种东西的组合,有点,没有点等 - 没有运气。尝试了 __directory、fs.filesDir 等,因此路径不会被硬编码,没有任何效果。
Tabris 文件夹和文件位置:
C:\Users\Rob Acer Aspire 3\junk\package.json
C:\Users\Rob Acer Aspire 3\junk\src\app.js
Tabris 2.4
感谢大家的帮助。
更新 - 让它工作......
它现在似乎可以工作了,代码如下。我假设 hello.txt 将在我的 /src 文件夹中,或者至少在我名为“垃圾”的 tabris 文件夹中但它正在写入另一个文件夹。似乎文档在这方面是正确的,因为他们说应用程序可能用来存储持久文件的目录的路径。
let file = fs.filesDir + '/hello.txt';
// ok, this works.. > file written: /local/hello.txt
// and is located in:
// C:\Users\Rob Acer Aspire 3\AppData\Local\Packages\EclipseSource.Tabris.js2_en185yn5qwkmw\LocalState\hello.txt
我不明白/local/hello.txt 的真正含义
所以,我的问题得到了解答,感谢您的帮助。
罗伯
【问题讨论】:
-
我根据我在您的问题中看到的内容发布了答案。如果答案没有帮助,您尝试以 Windows 形式读取的实际目录是什么?
-
嘿,谢谢.... 现在仍在使用 ."./local/src/hello.txt" - Windows 10 上的实际目录是:C:\Users\Rob Acer Aspire 3\junk \src\hello1.txt - 垃圾文件夹是使用`tabris init`创建的
-
该目录将是“./users/Rob Acer Aspire 3/junk/src/hell1.txt”,但您应该使用代码的相对位置,那么您的代码在哪个目录中运行?
-
我将对原始问题进行澄清。但我无法让它与任何路径一起工作......即,这会产生错误:错误:没有这样的文件或目录:./users/Rob Acer Aspire 3/junk/src/hello.txt at createError (./node -modules/tabris/tabris.min.js:1:69264) 我尝试了不同的文件,如 hello1.txt、hello.txt 等。
-
mrmccormack,可以将此添加为答案并将其标记为已接受吗?这样问题就会显示为已解决
标签: javascript tabris