使用 Ubuntu 在 Javascript 中导入文件

发布于 2024-12-09 23:06:17 字数 484 浏览 0 评论 0原文

如何在 Ubuntu 上用 Javascript 导入文件?这是我当前的代码:

TextFile.js

var file = null;
function createFile()
{
    file = new StreamReader();
    file.open("~//home//chris//LcdDisplayFile//qml//file.txt");
}

function readLine()
{
    var str = file.readLine();
    return str;
}

由于某种原因,它找不到该文件。我对 jscript 和 ubuntu 都是新手。 错误:

file:///home/chris/LcdDisplayFile/qml/TextFile.js:10: TypeError: 表达式“file”的结果 [null] 不是对象。

how do I import a file in Javascript on Ubuntu? Here is my current code:

TextFile.js

var file = null;
function createFile()
{
    file = new StreamReader();
    file.open("~//home//chris//LcdDisplayFile//qml//file.txt");
}

function readLine()
{
    var str = file.readLine();
    return str;
}

For some reason it cannot find the file. I am new to both jscript and ubuntu.
Error:

file:///home/chris/LcdDisplayFile/qml/TextFile.js:10: TypeError: Result of expression 'file' [null] is not an object.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

久而酒知 2024-12-16 23:06:17

~ 已经指向 /home/chris/。另外,为什么使用双 //[1] 这些斜杠在字符串中没有特殊含义。

[1]Windows 目录由反斜杠 (\) 分隔,它在 JavaScript 字符串中具有特殊含义(转义字符),因此 \\。普通斜杠不必转义,可以安全地写为 / (一个例外:正则表达式)

~ already points to /home/chris/. Also, why did you use a double //?[1] These slashes have no special meaning inside a string.

[1]Windows directories are separated by a backslash (\), which have a special meaning in JavaScript strings (escape character), hence \\. Normal slashes do not have to be escaped, and can be safely written as / (One exception: Regular expressions)

流年已逝 2024-12-16 23:06:17

对 QML 一无所知,我假设它支持 IO 并提供自己的类来读取流,并且您正在正确使用它。无论哪种方式,你的文件路径都是无效的......不应该是:

var path = '~/LcdDisplayFile/qml/file.txt'

或者

var path = '/home/chris/LcdDisplayFile/qml/file.txt'

也保持在我的Linux文件路径是区分大小写的。

Don't know anything about QML, I assume it supports IO and provides it own class for reading streams and that you are using it correctly. Either way your file path is invalid... shouldn't it just be:

var path = '~/LcdDisplayFile/qml/file.txt'

or

var path = '/home/chris/LcdDisplayFile/qml/file.txt'

Also keep in mine Linux file paths are case-sensitive.

携余温的黄昏 2024-12-16 23:06:17

除非您使用非标准的 JavaScript 服务器端扩展,例如 NodeJS ( http://nodejs.org/docs/v0.5.9/api/fs.html#fs.open ),文件 I/O 不是标准对象集的一部分。浏览器中的 JavaScript 不支持文件 I/O。

无论如何,这里的主要问题是 StreamReader 对象是什么以及在哪里。如果给定的 JavaScript 环境提供了它,那么该对象不应该为 null。

Unless you are using a non-standard server-side extension of JavaScript such as NodeJS ( http://nodejs.org/docs/v0.5.9/api/fs.html#fs.open ), file I/O is not part of the standard set of objects. JavaScript in the browser does not support file I/O.

At any rate, the main problem here is, what and where is the StreamReader object. If the given JavaScript environment provides it, then the object should not be a null.

冧九 2024-12-16 23:06:17

以下是一些有关将 javascript 与 QML 结合使用的文档。我希望这有帮助:

http://qt-project。 org/doc/qt-5.0/qtqml/qtqml-javascript-imports.html

Here's some documentation regarding using javascript with QML. I hope this helps:

http://qt-project.org/doc/qt-5.0/qtqml/qtqml-javascript-imports.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文