Java 文件中的序列化数据格式
我写了一些在文件中以某种格式显示数据的代码 我写的代码如下:Java 文件中的序列化数据格式,java,serialization,Java,Serialization,我写了一些在文件中以某种格式显示数据的代码 我写的代码如下: File file=new File("D:/timesheet.txt"); FileWriter fw = new FileWriter(file.getAbsoluteFile()); BufferedWriter bw = new BufferedWriter(fw); bw.write(timesheetlist.toStrin
File file=new File("D:/timesheet.txt");
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(timesheetlist.toString());
bw.close();
我的代码以如下格式打印:
[72013-02-0617:50:1519:19:152013-02-0619:02:1119:02:25212013-02-0618:25:2218:25:22282013-02-0618:25:4318:25:43442013-02-0619:20:2019:41:21562013-02-0617:54:0817:08]
但我想在文件中显示这些格式:
72013-02-0617:50:1519:19:15
132013-02-0619:02:1119:02:25
212013-02-0618:25:2218:25:22
282013-02-0618:25:4318:25:43
442013-02-0619:20:2019:41:21
562013-02-0617:54:0817:54:08
这里我在课堂上使用\n:
public class TimeSheetVO implements Serializable{
private String EMP_ID;
private String ATTENDANCE_DATE;
private Time IN_TIME;
private Time OUT_TIME;
private Time TOTAL_HOURS;
public String getEMP_ID() {
return EMP_ID;
}
public void setEMP_ID(String eMP_ID) {
EMP_ID = eMP_ID;
}
public String getATTENDANCE_DATE() {
return ATTENDANCE_DATE;
}
public void setATTENDANCE_DATE(String aTTENDANCE_DATE) {
ATTENDANCE_DATE = aTTENDANCE_DATE;
}
public Time getIN_TIME() {
return IN_TIME;
}
public void setIN_TIME(Time iN_TIME) {
IN_TIME = iN_TIME;
}
public Time getOUT_TIME() {
return OUT_TIME;
}
public void setOUT_TIME(Time oUT_TIME) {
OUT_TIME = oUT_TIME;
}
public Time getTOTAL_HOURS() {
return TOTAL_HOURS;
}
public void setTOTAL_HOURS(Time tOTAL_HOURS) {
TOTAL_HOURS = tOTAL_HOURS;
}
@Override
public String toString() {
return EMP_ID + ATTENDANCE_DATE + IN_TIME + OUT_TIME + "\n";
}
}
此处\t是影响但不影响\n
正在文件中显示arraylist对象
请告诉我这方面的任何想法。List.toString()
附加打开和关闭括号[…]
。对每个循环使用,而不是编写文本
for(TimeSheetVO time: timesheetlist){
bw.write(time);
}
只需使用StringBuilder
StringBuilder sb = new StringBuilder();
for (TimeSheetVO timeSheet : timesheetlist) {
sb.append(timeSheet.toString());
sb.append("\n");
}
File file = new File("D:/timesheet.txt");
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(sb.toString());
bw.close();
并删除“\n”:
谢谢您的回答,但这里的空格是逐行显示的,而不是用写字板打开文件,有时记事本无法用换行符显示“\n”。
@Override
public String toString() {
return EMP_ID + ATTENDANCE_DATE + IN_TIME + OUT_TIME;
}