我正试图通过Java调用一个简单的Hello World Cobol程序。Java代码采用IFS文件结构,而cobol对象则停放在一个库中。我面临着多重问题:
cobol代码在独立调用时起作用。我已经尝试编码UTF8、UTF16、Cp943和Default。当我使用UTF8、UTF16时,我会得到MalformedInputException,否则就是一个垃圾值。
Java代码:(编译@AS 400本身-Java 1.5)
import java.io.*; public class CallCLPgm { public static void main(String[] args) { try { Process theProcess = Runtime.getRuntime().exec("system CALL PROG6"); //error stream BufferedReader inStream1 = new BufferedReader(new InputStreamReader (theProcess.getErrorStream(),"UTF8")); System.out.println(inStream1.readLine()); inStream1.close(); //input stream BufferedReader inStream = new BufferedReader(new InputStreamReader (theProcess.getInputStream())); System.out.println(inStream.readLine()); inStream.close(); System.out.println("termination : "+theProcess.waitFor());
//Cobol code
PROCEDURE DIVISION.
PROGRAM-BEGIN.
DISPLAY "Hello World".
STOP RUN.
我应该把重点放在IBM编码格式http://publib.boulder.IBM.com/html/as400/v4r5/ic2924/index.htm?info//rzaha/fileenc.htm上
我对USA使用了“CP037”,而不是UTF8和其他格式。
BufferedReader inStream1=new BufferedReader(new InputStreamReader(TheProcess.getErrorStream(),“CP037”));
问题内容: 在对mysql查询进行排名时如何处理联系?在此示例中,我简化了表名和列,但它可以说明我的问题: 因此,假设上面的查询产生了: 即使Al和Amy的成绩相同,一个人的排名也比另一个高。艾米被偷走了。我如何才能使Amy和Al具有相同的排名,以使他们俩的排名都为1。而且,William和Mary没有参加考试。他们挤在教室里,在男孩的房间里抽烟。他们应该并列最后的位置。 正确的排名应该是: 如果
我正在尝试使用Apache Nifi实现下面的工作流: executesql-这是从avro格式的oracle数据库中获取数据 puthdfs-这是将数据放入HDFS executeProcess--这个处理器在后台执行bash脚本,然后创建外部配置单元表
本文向大家介绍cmd运行python文件时对结果进行保存的方法,包括了cmd运行python文件时对结果进行保存的方法的使用技巧和注意事项,需要的朋友参考一下 当用cmd命令行运行python文件时,我们知道可以通过 来运行python文件,此时的输出会直接打印到cmd输出行中,如果希望将运行直接保存而不是即时输出,除了在python代码中直接写入保存,还可以通过命令行: 保存到当前文件目录下,或
我们使用Cassandra的用例是显示一篇博客文章的前10名最近访问者。以下是Cassandra表定义 现在,为了显示给定博客帖子的前10名最近访问者,需要在时间戳desc上有一个明确的“order by”子句。因为visted_ts不是Cassandra中集群列的一部分,所以我们无法完成这项工作。visited_ts不是集群列的一部分的原因是为了避免记录重复(读为重复)访问者。主键的设计方式是为
问题内容: 在 pipe 上使用2个 队列 在进程之间进行通信有什么优势(如果有)? 我正在计划使用python模块。 问题答案: 最大的好处是队列是进程和线程安全的。管道不是:如果两个不同的进程试图读取或写入pipe的同一端,则会发生不良情况。队列的抽象级别也比管道更高,这在您的特定情况下可能有优势,也可能没有优势。
问题内容: 我有一个看起来像下面的文档: data.txt 我使用正则表达式对其进行了处理,并返回了如下的新处理文档: 这将返回已处理的MyClass的列表。可以并行运行,一切正常。 问题是我现在有这个: data2.txt 因此,我需要以某种方式加入正在从流中读取的行,直到出现新的匹配项为止。(有点像缓冲区吗?) 我尝试收集字符串,然后收集MyClass(),但没有成功,因为我实际上无法拆分流。