我正在研究相当大的数据集和文件上的main(String [] args)方法。该方法使用一个数字参数文件,它使用它们的文件名调用。但是,由于文件大小,它需要太长时间并且不太现实。因此,我决定将文件分解成小块。最简单的想法是读取主文件并将每个块写入较小的文件并调用该方法一定次数。这仍然需要一些时间并且不是最佳的。因此,我很好奇我是否可以简单地创建一个内存文件并将其作为我方法的参数调用。这可能吗?
以下是我的代码的副本。我可以在预处理中创建参考文件,但我特别想在内存中生成目标文件并调用它。
谢谢!
String target = "targetFile.txt";
String ref = "referenceFile.txt";
String output = "outputFile.txt";
String[] imputationArgs = new String[]{ref, target, output};
Main.main(imputationArgs);
答案 0 :(得分:0)
无论您将输入分成多少部分,您的java进程都应该能够将文件保存在内存中。您可以通过传递java -Xms256m -Xmx2048m
阅读this帖子了解详情。