public static String read(String txtName, String apiName) {
txtName = "E:/Diff/" + txtName + ".xls";
// 绝对路径或相对路径都可以,这里是绝对路径,写入文件时演示相对路径
File filename = new File(txtName);
if (!filename.exists()) {
return "";
}
String json = "";
// 创建输入流,读取Excel
// InputStream is = new FileInputStream(filename.getAbsolutePath());
// jxl提供的Workbook类
Workbook wb = null;
try {
wb = Workbook.getWorkbook(filename);
} catch (BiffException | IOException e) {
e.printStackTrace();
}
// 只有一个sheet,直接处理
// 创建一个Sheet对象
Sheet sheet = wb.getSheet(0);
// 得到所有的行数
int rows = sheet.getRows();
// 越过第一行 它是列名称
for (int j = 1; j < rows; j++) {
// 得到每一行的单元格的数据
Cell[] cells = sheet.getRow(j);
if (cells[2].getContents().equals("") || cells.length < 3) {
continue;
}
if (cells[1].getContents().equals(apiName)) {
json = cells[2].getContents();
break;
}
}
return json;
}
public static void write(String txtName, String apiName, String content) {
WritableWorkbook wwb;
String path = "E:/Diff/";
new File(path).mkdirs();
txtName = path + txtName + ".xls";
File writename = new File(txtName);
// 相对路径,如果没有则要建立一个新的txt文件
try {
boolean flag = writename.createNewFile();
// 创建输入流,读取Excel
InputStream is = new FileInputStream(writename);
// 创建一个Sheet对象
if (flag) {
OutputStream os = new FileOutputStream(writename);
// 创建一个可写的Workbook
wwb = Workbook.createWorkbook(os);
// 创建一个可写的sheet,第一个参数是名字,第二个参数是第几个sheet
WritableSheet sheet = wwb.createSheet(txtName, 0);
sheet.addCell(new Label(0, 0, "Id"));
sheet.addCell(new Label(1, 0, "ApiName"));
sheet.addCell(new Label(2, 0, "Response"));
wwb.write();
wwb.close();
if (os != null) {
os.close();
}
}
// jxl提供的Workbook类
Workbook wb = Workbook.getWorkbook(is);
wwb = Workbook.createWorkbook(writename, wb);
WritableSheet sheet = wwb.getSheet(0);
// 得到所有的行数
int rows = sheet.getRows();
// 越过第一行 它是列名称
for (int j = 0; j < rows; j++) {
// 得到每一行的单元格的数据
Cell[] cells = sheet.getRow(j);
if (cells[2].getContents().equals("") || cells.length < 3) {
continue;
}
if (cells[1].getContents().equals(apiName)) {
sheet.addCell(new Label(0, j, j + ""));
sheet.addCell(new Label(2, j, content));
break;
}
if (j == rows - 1) {
sheet.addCell(new Label(0, rows, (j + 1) + ""));
sheet.addCell(new Label(1, rows, apiName));
sheet.addCell(new Label(2, rows, content));
}
}
wwb.write();
wwb.close();
if (is != null) {
is.close();
}
} catch (WriteException | BiffException | IndexOutOfBoundsException | IOException e) {
e.printStackTrace();
}
}
excel读写
猜你喜欢
转载自blog.csdn.net/wuyepiaoxue789/article/details/85050288
今日推荐
周排行