1

我有一个 cloudsim 项目,这是输出代码,但这给了我一个文本文件,我希望我的输出在一个 excel 文件中,有什么办法吗?有人可以帮我吗?我还附上了控制台输出

private static void printCloudletList(List<Cloudlet> list) {
    int size = list.size();
    Cloudlet cloudlet;

    String indent = "    ";
    Log.printLine();
    Log.printLine("========== OUTPUT ==========");
    Log.printLine("Cloudlet ID" + indent + "STATUS" + indent +
            "Data center ID" + indent + "VM ID" + indent + indent + "Time" + indent + "Start Time" + indent + "Finish Time");

    DecimalFormat dft = new DecimalFormat("###.##");
    for (int i = 0; i < size; i++) {
        cloudlet = list.get(i);
        Log.print(indent + cloudlet.getCloudletId() + indent + indent);

        if (cloudlet.getCloudletStatus() == Cloudlet.SUCCESS){
            Log.print("SUCCESS");

            Log.printLine( indent + indent + cloudlet.getResourceId() + indent + indent + indent + cloudlet.getVmId() +
                    indent + indent + indent + dft.format(cloudlet.getActualCPUTime()) +
                    indent + indent + dft.format(cloudlet.getExecStartTime())+ indent + indent + indent + dft.format(cloudlet.getFinishTime()));
        }

在此处输入图像描述

4

1 回答 1

1

使用CloudSim Plus,您可以生成 CSV 格式的结果,在 Excel 中打开这样的文件,然后另存为 XLS。代码如下。CloudSim Plus 甚至允许您将所需的任何数据添加到生成的表中。

try {
    CsvTable csv = new CsvTable();
    csv.setPrintStream(new PrintStream(new java.io.File("/tmp/results.csv")));
    new CloudletsTableBuilder(broker0.getCloudletFinishedList(), csv).build();
} catch (IOException e) {
    System.err.println(e.getMessage());
}
于 2018-11-02T00:25:28.970 回答