为了账号安全,请及时绑定邮箱和手机立即绑定

格式化 .CSV 输出的问题

格式化 .CSV 输出的问题

慕斯王 2021-09-03 22:04:22
我目前正在为我的一个班级编写作业。我正在尝试将我的输出文件打印到 csv 文件。问题是,在我结束第二个打印语句后,在 while 循环中启动打印语句后,我的输出没有对齐。例如,这是我的代码:oFile = new PrintStream(new File("output.csv"));        oFile.println("First Name" + "," + "Last Name" + "," + "Lecture Section"+","+"Lab Section"+","+"Lab 1"+","+"Lab 2"+","+"Lab 3"+","+"Lab 4"+","+"Lab 5"+","+"Lab 6"+","+"Lab 7"+","+"Lab 8"+","+"Lab 9"+","+"Lab 10");        loadLectureArray();        loadLabArray();        sortClassSections();        for (int i = 0; i < stud.size(); i++) {            oFile.println(stud.get(i).getStudFirstName() + ","+stud.get(i).getStudLastName()+","+stud.get(i).getStudLectureNum()+","+stud.get(i).getStudLabNum()+",");            while (numLab < 10 && i < stud.size()) {                oFile.println(labStud.get(i).grades.getStudLabGrade()[numLab]);                numLab++;            }            numLab = 0;        }在我执行 while 循环后,我的新数据打印在我的标题和其他数据之间。有些代码并不完美,但目前我只是在寻求有关重新格式化输出以与打印语句保持一致的建议。这是我第一次将文件导出到 csv,所以如果我做错了什么或需要更改,请告诉我!我希望你能理解我的要求。提前致谢!
查看完整描述

1 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

嗯, println 总是打印一个换行符,所以你在每个年级后都会得到一个换行符。你应该能够得到你想要使用的东西,oFile.print(...)而不是oFile.println(...)在 for 循环中,而且只有一个oFile.println()在它的最后。

我还注意到,i < stud.size()while 循环头部的for 测试是多余的,因为在此测试和 for 循环头部的相同测试之间,不应更改 i 或stud.size()。


查看完整回答
反对 回复 2021-09-03
  • 1 回答
  • 0 关注
  • 133 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信