Java中的CSV解析-工作示例..?

我想为学校的Java项目编写一个程序,以解析一些我不知道的CSV。我确实知道每一列的数据类型-尽管我不知道分隔符。

我什至不知道该如何解决的问题是解析Date甚至DateTime Columns。它们可以是多种格式之一。

我发现了很多库,但没有找到最适合我需要的线索:http : //opencsv.sourceforge.net/ http://www.csvreader.com/java_csv.php http://supercsv.sourceforge.net/ http ://flatpack.sourceforge.net/

问题是我是一个java初学者。恐怕这些库中没有一个能满足我的需要,或者我不能说服他们去做。

我敢打赌,这里有很多人都有代码示例,这些示例可以让我立即着手满足我的需求:

  • 自动拆分为列(定界符未知,列类型已知)

  • 强制转换为Columntype(应应付$,%等)

  • 将日期转换为Java日期或日历对象

最好通过电子邮件获取尽可能多的代码示例。

非常感谢!如


猛跑小猪
浏览 371回答 3
3回答

牧羊人nacy

您还拥有Apache Commons CSV库,也许它可以满足您的需求。请参阅指南。在2014-11年更新为1.1版。另外,对于万无一失的版本,我认为您需要自己编写代码...通过SimpleDateFormat选择格式并指定各种类型,如果与Date您的任何预先考虑的类型都不一样,则不是一个约会。

蛊毒传说

我的方法不是从编写自己的API开始。生活太短了,还有更多亟待解决的问题。在这种情况下,我通常:查找一个看起来像我想要的东西的图书馆。如果不存在,然后实现它。如果确实存在一个库,但是我不确定它是否适合我的需求,请围绕它编写一个瘦适配器API,以便我可以控制它的调用方式。适配器API表示我需要的API ,并将这些调用映射到基础API。如果该库不合适,我可以在不影响调用者的情况下以最小的努力在适配器API之下交换另一个库(无论是另一个开源库还是我自己写的东西)。从某人已经写过的东西开始。奇怪的是,它会做您想要的。如有必要,您以后随时可以自己编写。OpenCSV与任何其他方法一样都是一个很好的起点。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java