انسخ رمز الكود كما يلي:
package Export.excel;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
استيراد java.io.File؛
import java.io.FileInputStream;
import java.io.FileOutputStream;
استيراد java.io.OutputStream؛
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
استيراد jxl.Cell؛
import jxl.Sheet;
استيراد jxl.Workbook؛
import jxl.format.Alignment;
import jxl.format.VerticalAlignment;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import Export.vo.PersonVo;
/ ** تصدير ملف اكسل
*
* @المؤلف المارة أ
*
*/
الطبقة العامة إكسبورت إكسيل {
القائمة العامة<PersonVo> personVoList;
publicExportExcel()
{
initdata();
}
/**
* بيانات التهيئة
*/
initdata الفراغ العام ()
{
// دالة عشوائية
عشوائي عشوائي = عشوائي جديد ()؛
personVoList = new ArrayList<PersonVo>();
// تهيئة 100 شخص في المجموعة
PersonVo personVo = null;
لـ (int i = 0; i < 100; i++)
{
personVo = new PersonVo();
personVo.setId(""+i);
personVo.setName("passer-by" + i);
إذا (i%2==0)
{
personVo.setSex("ذكر");
}
آخر
{
personVo.setSex("أنثى");
}
// احصل على عمر عشوائي خلال 100 عام
personVo.setAge("" + Random.nextInt(100));
personVoList.add(personVo);
}
}
/ ** تصدير البيانات بتنسيق Excel
* اسم ملف التصدير ExportName
* @param اسم التصدير
*/
تصدير الفراغ العام (اسم تصدير السلسلة)
{
يحاول{
ملف excelFile = ملف جديد(exportName + "Temp.xls");
// تنسيق الملف
WritableCellFormat format = new WritableCellFormat();
// x إلى اليسار
format.setAlignment(Alignment.RIGHT);
// ذ أعلى
format.setVerticalAlignment(VerticalAlignment.TOP);
// أنشئ ملف عمل
WritableWorkbook writableWorkbook = Workbook.createWorkbook(excelFile);
// إنشاء مصنف
WritableSheetsheet1 = writableWorkbook.createSheet("قائمة المعلومات الشخصية"، 0);
// أنشئ عدد الصفوف وضبط عرض الصفوف
Sheet1.setColumnView(0, 10);
Sheet1.setColumnView(1, 10);
Sheet1.setColumnView(2, 10);
Sheet1.setColumnView(3, 10);
// قم بتعيين قيمة الصف
Sheet1.addCell(new Label(0, 0, "ID"، تنسيق));
Sheet1.addCell(new Label(1, 0, "Name"، التنسيق));
Sheet1.addCell(new Label(2, 0, "Gender, format));
Sheet1.addCell(new Label(3, 0, "Age", format));
//اكتب المجموعة في ملف Excel
عدد الصف int = 1؛
لـ (PersonVo bean: personVoList)
{
int colspanNum = 0;
Sheet1.addCell(new Label(colspanNum,rowNum,bean.getId(), format));
Sheet1.addCell(new Label(colspanNum++,rowNum,bean.getName(), format));
Sheet1.addCell(new Label(colspanNum++,rowNum,bean.getSex(), format));
Sheet1.addCell(new Label(colspanNum++,rowNum,bean.getAge(), format));
rowNum++;
}
writableWorkbook.write();
writableWorkbook.إغلاق();
// إذا تم تنزيله من الإنترنت، فاكتب هذه
// super.getHttpServletResponse().setContentType("application/x-msdownload");
// String encodetittle = new String(excelName.getBytes("GBK"), "ISO-8859-1");
// super.getHttpServletResponse().addHeader("Content-Disposition"، "attachment؛ filename = "+encodetittle+".xls")؛
FileInputStream finput = new FileInputStream(excelFile);
// OutputStreamput = super.getHttpServletResponse().getOutputStream();
File fout = new File(exportName + ".xls");
OutputStreamput = new FileOutputStream(fout);
BufferedInputStream buffin = new BufferedInputStream(finput);
BufferedOutputStream buffout = new BufferedOutputStream(output);
بايت[] المخزن المؤقت = بايت جديد[4096];
عدد صحيح = 0؛
بينما ((count = buffin.read(buffer, 0, buffer.length)) > 0) {
buffout.write(buffer, 0, count);
}
buffin.إغلاق();
buffout. Close();
finput. Close();
الإخراج. إغلاق ()؛
excelFile.delete();
}
قبض (استثناء ه) {
printStackTrace();
}
أخيراً
{
System.out.println("إكمال عملية التصدير");
}
}
/ ** يتم تصدير البيانات المستوردة بتنسيق Excel
*
*param importExcel اسم ملف Excel الاستيراد
*/
importPerson الفراغ العام (سلسلة importExcel)
{
يحاول{
File excelFile = new File(importExcel+".xls");
// أنشئ ملف عمل
مصنف المصنف = Workbook.getWorkbook(excelFile);
// احصل على المصنف الأول. هناك طريقتان للحصول على الورقة. 1 هو الاسم والمنخفض يبدأ من 0.
ورقة الورقة = Workbook.getSheet(0);
// إجمالي عدد السجلات
int allRow = Sheet.getRows();
int allColspan =sheet.getColumns();
System.out.println(allRow);
System.out.println(allColspan);
// احصل على البيانات
لـ (int i=0; i<allRow; i++)
{
// احصل على قيمة كل عمود
لـ (int j=0; j<allColspan; j++)
{
//sheet.getCell(عدد الأعمدة، عدد الصفوف)؛
خلية الخلية = Sheet.getCell(j, i);
// اطبع قيمة هذا العمود
System.out.print(cell.getContents() + "/t");
}
System.out.println();
}
//إنهاء
Workbook.Close();
}قبض (استثناء ه) {
printStackTrace();
}
أخيراً
{
System.out.println("إكمال عملية الاستيراد");
}
}
/**
* @param args
*/
public static void main(String[] args) {
ExportExcel ExportExcel = new ExportExcel();
//تعيين المسار
String srcPath = "C:/Quarantine/PersonVo";
//يصدّر
//exportExcel.exportPerson(srcPath);
// يقرأ
importExcel.importPerson(srcPath);
}
}