#37 java: poi api ex2
This commit is contained in:
BIN
java/api/members.xlsx
Normal file
BIN
java/api/members.xlsx
Normal file
Binary file not shown.
84
java/api/src/main/java/poi/ExcelWriter.java
Normal file
84
java/api/src/main/java/poi/ExcelWriter.java
Normal file
@@ -0,0 +1,84 @@
|
||||
package poi;
|
||||
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Scanner;
|
||||
|
||||
public class ExcelWriter {
|
||||
|
||||
public static void main(String[] args) {
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
List<MemberVo> members = new ArrayList<>();
|
||||
|
||||
while (true) {
|
||||
System.out.print("이름을 입력하세요:");
|
||||
String name = scanner.nextLine();
|
||||
if (name.equals("quit")) {
|
||||
break;
|
||||
}
|
||||
|
||||
System.out.print("나이을 입력하세요:");
|
||||
int age = scanner.nextInt();
|
||||
scanner.nextLine();
|
||||
|
||||
System.out.print("생년월일을 입력하세요:");
|
||||
String birthDate = scanner.nextLine();
|
||||
|
||||
System.out.print("전화번호를 입력하세요:");
|
||||
String phone = scanner.nextLine();
|
||||
|
||||
System.out.print("주소를 입력하세요:");
|
||||
String address = scanner.nextLine();
|
||||
|
||||
System.out.print("결혼여부를 입력하세요 (true/false):");
|
||||
boolean isMarried = scanner.nextBoolean();
|
||||
scanner.nextLine();
|
||||
|
||||
MemberVo member = new MemberVo(name, age, birthDate, phone, address, isMarried);
|
||||
members.add(member);
|
||||
}
|
||||
scanner.close();
|
||||
|
||||
try {
|
||||
XSSFWorkbook workbook = new XSSFWorkbook();
|
||||
Sheet sheet = workbook.createSheet("회원 정보");
|
||||
|
||||
// 헤더
|
||||
Row header = sheet.createRow(0);
|
||||
header.createCell(0).setCellValue("이름");
|
||||
header.createCell(1).setCellValue("나이");
|
||||
header.createCell(2).setCellValue("생년월일");
|
||||
header.createCell(3).setCellValue("전화번호");
|
||||
header.createCell(4).setCellValue("주소");
|
||||
header.createCell(5).setCellValue("결혼여부");
|
||||
|
||||
// 데이터 생성
|
||||
for (int i = 0; i < members.size(); i++) {
|
||||
MemberVo member = members.get(i);
|
||||
Row row = sheet.createRow(i + 1);
|
||||
row.createCell(0).setCellValue(member.getName());
|
||||
row.createCell(1).setCellValue(member.getAge());
|
||||
row.createCell(2).setCellValue(member.getBirthDate());
|
||||
row.createCell(3).setCellValue(member.getPhone());
|
||||
row.createCell(4).setCellValue(member.getAddress());
|
||||
row.createCell(5).setCellValue(member.isMarried());
|
||||
}
|
||||
|
||||
final String filename = "members.xlsx";
|
||||
FileOutputStream outputStream = new FileOutputStream(filename);
|
||||
workbook.write(outputStream);
|
||||
workbook.close();
|
||||
System.out.println("엑셀 파일 저장 완료: " + filename);
|
||||
} catch (IOException e) {
|
||||
System.out.println("오류 발생");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
83
java/api/src/main/java/poi/MemberVo.java
Normal file
83
java/api/src/main/java/poi/MemberVo.java
Normal file
@@ -0,0 +1,83 @@
|
||||
package poi;
|
||||
|
||||
public class MemberVo {
|
||||
|
||||
private String name;
|
||||
private int age;
|
||||
private String birthDate;
|
||||
private String phone;
|
||||
private String address;
|
||||
private boolean isMarried;
|
||||
|
||||
public MemberVo() {
|
||||
}
|
||||
|
||||
public MemberVo(String name, int age, String birthDate, String phone, String address, boolean isMarried) {
|
||||
this.name = name;
|
||||
this.age = age;
|
||||
this.birthDate = birthDate;
|
||||
this.phone = phone;
|
||||
this.address = address;
|
||||
this.isMarried = isMarried;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public int getAge() {
|
||||
return age;
|
||||
}
|
||||
|
||||
public void setAge(int age) {
|
||||
this.age = age;
|
||||
}
|
||||
|
||||
public String getBirthDate() {
|
||||
return birthDate;
|
||||
}
|
||||
|
||||
public void setBirthDate(String birthDate) {
|
||||
this.birthDate = birthDate;
|
||||
}
|
||||
|
||||
public String getPhone() {
|
||||
return phone;
|
||||
}
|
||||
|
||||
public void setPhone(String phone) {
|
||||
this.phone = phone;
|
||||
}
|
||||
|
||||
public String getAddress() {
|
||||
return address;
|
||||
}
|
||||
|
||||
public void setAddress(String address) {
|
||||
this.address = address;
|
||||
}
|
||||
|
||||
public boolean isMarried() {
|
||||
return isMarried;
|
||||
}
|
||||
|
||||
public void setMarried(boolean married) {
|
||||
isMarried = married;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "MemberVo{" +
|
||||
"name='" + name + '\'' +
|
||||
", age=" + age +
|
||||
", birthDate='" + birthDate + '\'' +
|
||||
", phone='" + phone + '\'' +
|
||||
", address='" + address + '\'' +
|
||||
", isMarried=" + isMarried +
|
||||
'}';
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user