Javascript新文件()gem文件大小

Javascript新文件()gem文件大小,javascript,photoshop,photoshop-script,Javascript,Photoshop,Photoshop Script,我有以下文件结构: test.html test.json 以及以下JS函数: function get_file(){ var app_path = app.activeDocument.path, file = new File(app_path + '/test.json'); console.log(file); } 如何使函数记录文件内容?我不确定您在浏览器环境中所能做的一切是否都转化为在photoshops环境中所能做的一切。但是你应该看一些

我有以下文件结构:

test.html
test.json
以及以下JS函数:

function get_file(){
    var app_path = app.activeDocument.path,
        file = new File(app_path + '/test.json');  

    console.log(file);
}

如何使函数记录文件内容?

我不确定您在浏览器环境中所能做的一切是否都转化为在photoshops环境中所能做的一切。但是你应该看一些东西

在浏览器中执行此操作

文件
对象

值得注意的是,它扩展了
Blob
对象

如果您进行研究,您会发现可以使用
文件读取器
读取该文件

因此,这在浏览器中有效,但在photoshop脚本集中可能/可能不起作用

function get_file(){
    var app_path = app.activeDocument.path,
        file = new File(app_path + '/test.json');  

    var reader = new FileReader();
    reader.onloadend = function() {
        console.log(reader.result);
    }

    reader.readAsText(file);
}
这是异步的,因此您可能需要使用回调,这取决于您试图如何处理它。您将无法从
读取器.onloadend
事件中返回字符串

在Photoshop中执行此操作

看看他们的脚本引用。特别是javascript引用

所有资源:

Javascript PDF:

看起来他们没有
文件阅读器
,但是
文件
对象可以用来读取内容。
文件
API从第109页开始,但它是空的!文档有点可怜,所以我可以理解为什么你找不到这个。通过一些搜索,我在2012年发现有人这样做(但我不知道它是否仍然有效——值得一试)


让我知道这是否有效。

在node或其他JS环境中?@DanielA.White不,我使用的是纯Javascript,这并不意味着什么-你是说在浏览器中?@DanielA.White不,我实际上是在为Photoshop扩展开发,这会带来很大的不同。我已经适当地标记了您的问题。出于某种原因,
FileReader
从Photoshop返回一个内部错误,就在定义
newfilereader
变量的地方。关于如何克服此问题的任何线索?已更新。我不确定这是否对你有效,但试试看。
var b = new File("c:\test.txt");

b.open('r');

var str = "";
while(!b.eof) {
    str += b.readln();
}

b.close();

alert(str);