public ArrayList OpenAndReadExcel(){
FileInputStream file = null;
HSSFWorkbook workBook = null;
ArrayList <String> rows = new ArrayList();
//open the file
try {
file = new FileInputStream(new File("Fruity.xls"));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("Could not open Input File");
e.printStackTrace();
}
// open the input stream as a workbook
try {
workBook = new HSSFWorkbook(file);
} catch (IOException e) {
// TODO Auto-generated catch block
System.out.println("Can't Open HSSF workbook");
e.printStackTrace();
}
// get the sheet
HSSFSheet sheet = workBook.getSheetAt(0);
// add an iterator for every row and column
Iterator<Row> rowIter = sheet.rowIterator();
while (rowIter.hasNext())
{
String rowHolder = "";
HSSFRow row = (HSSFRow) rowIter.next();
Iterator<Cell> cellIter = row.cellIterator();
Boolean first =true;
while ( cellIter.hasNext())
{
if (!first)
rowHolder = rowHolder + ",";
HSSFCell cell = (HSSFCell) cellIter.next();
rowHolder = rowHolder + cell.toString() ;
first = false;
}
rows.add(rowHolder);
}
return rows;
}
public void WriteOutput(ArrayList<String> rows) {
// TODO Auto-generated method stub
PrintStream outFile ;
try {
outFile = new PrintStream("fruity.txt");
for(String row : rows)
{
outFile.println(row);
}
outFile.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Notice the two extra commas before the Grade column... This is because I have two blank columns there.<br/>
其余输出中缺少这些额外的逗号。
我使用的是Apache Poi-3.9-20121203.jar
您应该阅读Apache POI网站上的迭代行和单元格文档。
CellIterator将只返回文件中定义的单元格,这很大程度上意味着具有值或格式的单元格。excel文件格式是稀疏的,不需要存储既没有值也没有格式的单元格。
对于您的情况,必须将格式应用到第一行,从而使它们显示出来。
读取文件已支持 windows 系统,版本号大于等于 1.3.4.1; 扩展版本大于等于 1.2.7; PECL 安装时将会提示是否开启读取功能,请键入 yes; 测试数据准备 $config = ['path' => './tests']; $excel = new \Vtiful\Kernel\Excel($config); // 写入测试数据 $filePath = $excel->f
这是我的代码和所有工作,除了我无法插入数据到活动工作表的最后一个空白。大胆是我想做的,但失败了... 设置nextrow=Range(单元格(rows.count,“a”).end(xlUp).row+1)
因此,在excel中,我试图去掉包含信息的单元格之间的空白单元格,使用F5找到空白单元格,然后用Ctrl+-删除它们,并向上移动单元格。但当我尝试这样做时,它告诉我“没有发现细胞”。 所以我的问题是,我怎么还能做到这一点,但这些空白单元格Excel认为不是空白的?我试着通过并只按删除空白单元格,但我有很多数据,并意识到这将花费我太长的时间。我需要找到一种方法来选择这些‘空白’单元格的数据选择。 提
我一直在用POI编写一个代码来将数据输入到Excel表中。首先,我需要遍历一组行,我不确定其中有多少行,可能是10或100行。但我发现末尾有一个空白单元格。在那个空白之后,又有一组行。我不担心第二盘。我需要找到第一盘是否已经结束。 这很让人困惑。现在我有5个用户在我的工作表如下所示。在第5个用户之后有一个空白单元格。我试图打印所有的用户,如果有一个空白停止它。
我目前正在尝试将放置在不同的位置,而不是视图控制器的顶部。说到这里,它试图在顶部添加标题来说明导航栏,但这不是必需的,因为我的控制器顶部没有标题。 如果我把的左上角放在我想要的单元格位置,它不会把单元格放在那里: 现在,如果我只是向上移动表格视图,使单元格位于正确的位置,我会遇到另一个问题-滚动时单元格可以向上移动(这是用我的手指在导航控制器上方): 当我放手的时候,是的-单元格将在搜索栏的正下方
我正在尝试使用Java中的Apache Poi将一些结果写入excel文件。我将结果存储在String变量中,然后在data.put调用中使用这些变量,前两个可以正常工作,但第三个导致空白单元格。当我打印到system.out.println()时,它显示良好? //创建空白工作簿XSSFWorkbook workbook=new XSSFWorkbook(); 子节点名称:#text 子节点文本