Skip to main content

Simple Writing

This chapter introduces how to use Fesod to perform simple spreadsheet writing operations.

Overview​

Use Fesod for simple spreadsheet data writing to quickly write entity objects to spreadsheet files. This is the most basic and commonly used writing approach.

Code Examples​

POJO Class​

The DemoData POJO class corresponding to the spreadsheet structure:

@Getter
@Setter
@EqualsAndHashCode
public class DemoData {
@ExcelProperty("String Title")
private String string;
@ExcelProperty("Date Title")
private Date date;
@ExcelProperty("Number Title")
private Double doubleData;
@ExcelIgnore
private String ignore; // Ignored field
}

Data List​

private List<DemoData> data() {
List<DemoData> list = ListUtils.newArrayList();
for (int i = 0; i < 10; i++) {
DemoData data = new DemoData();
data.setString("String" + i);
data.setDate(new Date());
data.setDoubleData(0.56);
list.add(data);
}
return list;
}

Writing Methods​

Fesod provides multiple writing methods, including Lambda expressions, data lists, ExcelWriter objects, etc.

Lambda Expression​

@Test
public void simpleWrite() {
String fileName = "simpleWrite" + System.currentTimeMillis() + ".xlsx";

FesodSheet.write(fileName, DemoData.class)
.sheet("Sheet1")
.doWrite(() -> data());
}

Data List​

@Test
public void simpleWrite() {
String fileName = "simpleWrite" + System.currentTimeMillis() + ".xlsx";

FesodSheet.write(fileName, DemoData.class)
.sheet("Sheet1")
.doWrite(data());
}

ExcelWriter Object​

@Test
public void simpleWrite() {
String fileName = "simpleWrite" + System.currentTimeMillis() + ".xlsx";

try (ExcelWriter excelWriter = FesodSheet.write(fileName, DemoData.class).build()) {
WriteSheet writeSheet = FesodSheet.writerSheet("Sheet1").build();
excelWriter.write(data(), writeSheet);
}
}

Result​

All three approaches produce the same file. Row 1 holds the header titles taken from @ExcelProperty, and the 10 objects returned by data() follow in rows 2-11. The ignore field is absent because it is annotated @ExcelIgnore.

ABC
1String TitleDate TitleNumber Title
2String02026-07-31 20:50:230.56
3String12026-07-31 20:50:230.56
4String22026-07-31 20:50:230.56
⋮………
11String92026-07-31 20:50:230.56