public class Array_Learn {
public static void main(String[] args) {
try {
FileInputStream ExcelFile = new FileInputStream(new File("C:\\Users\\Anbu.B\\Desktop\\POI-Test\\mediTask.xlsx"));
XSSFWorkbook book1 = new XSSFWorkbook(ExcelFile);
XSSFSheet sheet = book1.getSheetAt(0);
Iterator<Row> rowiter = sheet.iterator();
while (rowiter.hasNext()) {
XSSFRow row = (XSSFRow) rowiter.next();
if (row.getRowNum() == 2) {
Iterator cellIterator = row.cellIterator();
while (cellIterator.hasNext()) {
XSSFCell cell = (XSSFCell) cellIterator.next();
if (cell.getStringCellValue().contains("|")) {
String split[] = cell.getStringCellValue().split("\\|");
}
}
}
}
} catch (Exception e) {
System.out.println(e);
}
}
}
我需要这个输出:
chest&&pain=J90
lung&&pneumonia=J54.9
lungs&&pneumonia=J54.9
bronchi&&pneumonia=J54.9
bronchus&&pneumonia=J54.9
colon&&ascending&tumor=D12.5
colon&&ascending&carcinoma=D12.5
colon&&ascending&cancer=D12.5
colon&&ascending&&tumor&&resection=D12.6
colon&&descending&&tumor&&resection=D12.6
colon&&ascending&&carcinoma&&resection=D12.6
colon&&descending&&carcinoma&&resection=D12.6
colon&&ascending&&cancer&&resection=D12.6
colon&&descending&&cancer&&resection=D12.6
上面的代码执行读取行和迭代每个单元格并检查单元格包含的内容 |
符号条件为true split语句正在工作,但我需要上面的精确输出。我在上述代码中所做的操作:
读取excel文件。
从excel文件中读取工作表。
然后创建行迭代器。
创建单元迭代器。
检查单元格是否包含|符号,然后拆分该单元格字符串并存储到字符串数组中。
1条答案
按热度按时间13z8s7eq1#
你几乎完成了你的任务。这里的关键是使用其中一种算法来生成组合。您可以在那里找到此类算法的一般描述,或者在java上找到更接近的字符串示例。
完整代码示例(递归算法):
这个
ParsedRow
用于计算不同组合的类:这个
Main
阅读课程xlsx
文件和打印结果