C ++ Java J avaScript VBScript 各是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C ++ Java J avaScript VBScript 各是啥?相关的知识,希望对你有一定的参考价值。

首先你说的这些东西都是编程语言,其中C++是一种能力很大的编程语言,但是在常规的开发项目中并不常用,属于基层语言的一类。Java是我经常使用的编程语言,可以方便的开发各种软件和网站,扩展性很强。javascript是一种脚本语言,常用于网页,比如你在网页上看到很多特效,很多东西动起来都是使用这个实现的。VBScript也是一种脚本语言,功能上跟javascript大同小异,只有在有特殊的使用需求的时候才会使用。 参考技术A 都是编程语言。C是解释型语言,Java是面向对象语言,JavaScript 和 VBScript是脚本语言。

如何使用 Java 中的参数运行 VBS 函数并将结果分配给变量

【中文标题】如何使用 Java 中的参数运行 VBS 函数并将结果分配给变量【英文标题】:How to run VBS function with parameters from Java and assign result to variable 【发布时间】:2017-07-02 20:24:56 【问题描述】:

我有这个 excel 宏:

Function Calculate_Something(StartDate As Date, EndDate As Date) As Double

//some math is here, not important

Calculate_Something = Result
End Function

我想将我的日期传递给这个宏,在我的 Java 程序中执行它,最后得到返回值并将它分配给我在 Java 中的值。

我已经用这个函数创建了 VBS 脚本,并尝试在 Java 中像这样执行它:

 String[] parms = "wscript", "calc.vbs", "2017-02-06 09:38:36", "2017-02-06 12:47:41";
 Runtime.getRuntime().exec(parms);

但它没有用。你知道我该怎么做吗?

【问题讨论】:

【参考方案1】:

您将希望使用cscript.exe 而不是wscript.exe,它们都是同一个主机,但一个是为 GUI 设计的,而另一个是为命令行设计的。

修改 VBScript 函数以将Result 输出到屏幕(执行的命令输出流),然后使用从调用Runtime.getRuntime().exec(parms); 派生的Process 对象检索它。

Process 对象有一个名为 getInputStream() 的方法,它应该允许您访问和读取脚本输出返回的值。

try 
    String[] parms = "cscript", "calc.vbs", "2017-02-06 09:38:36", "2017-02-06 12:47:41";
    Process p = Runtime.getRuntime().exec(parms);

    // Get Input Stream from the Process
    BufferedReader is = new BufferedReader(new InputStreamReader(p.getInputStream()));

    // Do something with stream, read etc.
    String line;
    while ((line = is.readLine()) != null)
        System.out.println(line);

 catch (Exception ex) 
    ex.printStackTrace();


有用的链接

vbscript output to console What is InputStream & Output Stream? Why do we use them and when do we use each of them? Understanding getInputStream and getOutputStream

【讨论】:

以上是关于C ++ Java J avaScript VBScript 各是啥?的主要内容,如果未能解决你的问题,请参考以下文章

即使在我重新加载页面后,如何防止已经在 J​​avascript 中启动的“onclick”功能?

个人简介

vbs怎样操纵java的GUI

java中调用.vbs文件,vbs文件并没有反应

c语言怎么启动vbs脚本不弹出黑窗口呢,跪谢?

VBS和JAVA和C++,有啥区别,有啥差距