【发布时间】:2014-07-09 19:00:59
【问题描述】:
我目前正在使用 RapidMiner 6,在流程结束时,我必须将数据集输出到 Java 程序。
在文档中说:“Write CSV -> Execute Program”之类的过程将通过标准输出将数据集发送到我正在执行的程序,但我的提示是:我怎么知道,在我的 Java程序,数据什么时候发送?
当前程序只是从标准输入中读取并将写入的内容保存为 csv 文件。代码是:
public class WakaMain {
public static void main(String[] args) throws IOException {
ArrayList<String> input = new ArrayList<String>();
Scanner in = new Scanner(System.in);
String inLine = in.nextLine();
while(inLine != null){
input.add(inLine);
inLine = in.nextLine();
}
in.close();
writeStream(input);
System.out.println("Done: "+input.size()+" Inputs");
}
public static void writeStream(ArrayList<String> in) throws IOException{
FileWriter fw = new FileWriter("StreamWriteOutput.csv");
PrintWriter pw = new PrintWriter(fw);
for(int i = 0; i<in.size();i++){
pw.println(in.get(i));
}
pw.close();
}}
我最初认为“ inLine != null ”会像读取文本文件时一样工作,但事实并非如此。
你知道我该怎么做吗?
谢谢各位。
【问题讨论】:
标签: java input stream operator-keyword rapidminer