Java:从Excel风格的文档读取最简单的方法?

我试图从类似于Excel文档的文件中find读取数据的最佳方式。 它不一定需要成为一个真正的Excel文档,任何文件都可以让你以网格格式input数据。 有些地方我可以做类似这样的操作:

String val = file.readString(column,row); float val2 = file.readFloat(column,row); 

对不起,我在这里发表问题之前通常会尝试做更多的研究,但是我很难find很多信息。 我看到的很多是读取excel文件的第三方库。 我真的希望如果可能,我可以避免下载库,并希望使用内置的。

所以我想我的问题总之是:什么是最合适的文件格式呢? 从该文件读取数据的最佳方法是什么?

我首先想到的是CSV。 CSV文件只是.csv文件扩展名的普通文本文件。 数据以这种格式存储:

 cell,anothercell,athirdcell anotherrow,anothercellonthenewrow,thirdcellofsecondrow 

有关更多详细信息,请在此处阅读CSV规范。

选项1

将数据存储在CSV中,并用任何types的阅读器(例如BufferedReader)进行阅读。 如果您想使用Excel / LibreOfficeinput数据,这可能是最简单和最快的解决scheme。

请查看这些 线程中的答案以获得各种 解决scheme 。

  String csvfile = path; BufferedReader br = null; String line = ""; String cvsSplitby = ";"; try { br = new BufferedReader(new FileReader(csvfile)); while ((line = br.readLine()) != null) { String[] i = line.split(cvsSplitby); // do stuff } } catch (all kind of exceptions e) { e.printStackTrace(); } finally { if (br != null) { try { br.close(); } catch (IOException e) { e.printStackTrace(); } } } 

希望我没有错过任何重要的事情。

选项2

使用POI Apache 。

选项3

我用JXL做了一些不错的体验,但是我明白你不想包含太多的外部库。 (我刚刚看到它没有被更新,请考虑其他选项!)