Hello Rhino
First, look at my examples' file structure:
RhinoTest lib js.jar scripts hello.js file1.js run.bat
My first rhino example is hello.js:
for (var i = 0; i < arguments.length; i++) { print('arguments[' + i + '] = ' + arguments[i]);}function add() { var result = 0; for (var i = 0; i < arguments.length; i++) { result += arguments[i]; } return result;}print('2 + 5 + 3 = ' + add(2, 5, 3));
The hello.js is executed through batch file run.bat:
@echo offecho.echo ---------- hello ----------java -cp libjs.jar org.mozilla.javascript.tools.shell.Main scriptshello.js Hello Rhino
And the result:
arguments[0] = Helloarguments[1] = Rhino2 + 5 + 3 = 10
How to get user’s current working directory
We all know java.lang.System class contains several useful fields and methods.
The getProperties method can be used to determine the current system properties.
var System = Packages.java.lang.System;print('Working directory = ' + System.getProperty('user.dir'));print('Home directory = ' + System.getProperty('user.home'));print('Account name = ' + System.getProperty('user.name'));print('Line separator ("\n" on UNIX) = ' + (String(System.getProperty('line.separator')) === 'rn' ? '\r\n' : '\n'));print('File separator ("/" on UNIX) = ' + System.getProperty('file.separator'));
Output:
Working directory = D:documentsRhinoTestHome directory = C:Documents and SettingssanshiAccount name = sanshiLine separator ("n" on UNIX) = rnFile separator ("/" on UNIX) =
File or Path exist
var System = Packages.java.lang.System;var File = Packages.java.io.File;var userDir = System.getProperty('user.dir');var file = new File(userDir + "\scripts\hello.js");print(file.exists()); /* true */print(new File(userDir + "\scripts").exists()); /* true */
Read File to string
Use LineNumberReader to read file to string:
var System = Packages.java.lang.System;var File = Packages.java.io.File;var lineSeparator = System.getProperty('line.separator');var userDir = System.getProperty('user.dir');var reader = new Packages.java.io.LineNumberReader( new Packages.java.io.FileReader(userDir + "\scripts\hello.js"));var lines = [];while (line = reader.readLine()) { lines.push(line); lines.push(lineSeparator);}reader.close();print(lines.join(''));
Write string to file
Refer to BufferedWriter
var System = Packages.java.lang.System;var userDir = System.getProperty('user.dir');var writer = new Packages.java.io.PrintWriter( new Packages.java.io.BufferedWriter( new Packages.java.io.FileWriter(userDir + "\scripts\output.txt")));writer.write("This is file content.rnIt's easy!");writer.flush();writer.close();
Refer to JsDoc Toolkit
點擊查看更多內(nèi)容
為 TA 點贊
評論
評論
共同學(xué)習(xí),寫下你的評論
評論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦