如何使用 InDesign 脚本保存文本文件?

Jac*_*eam 0 javascript adobe-indesign

我正在使用脚本从 InDesign INDD 文件中提取一些数据。我想将数据保存在 txt 或 json 文件中,但我的文件未成功保存。

var data = 'string of data';
var filename = 'CS111.json';

var file = new File(filename);
var path = file.saveDlg(); //returns a valid path, but with spaces as '%20'
file.changePath(path);
var write = file.write(data); //returns false
file.close();
Run Code Online (Sandbox Code Playgroud)

我在这里缺少什么?该文件未显示在所选文件夹中。

Jac*_*eam 6

使用 InDesign Javascript 保存文件至少有四个步骤:获取路径和文件名、创建文件对象、打开文件、写入文件和关闭文件。

我发现如果我不设置编码,写入步骤有时会失败。

//Define path and file name
var path = '~/Documents/';
var filename = 'filename.txt';

//Create File object
var file = new File(path + filename);

file.encoding = 'UTF-8';
file.open('w');
file.write('data here');
file.close();
Run Code Online (Sandbox Code Playgroud)

文档:File, .open(),.write()