我想为学校的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日期或日历对象最好通过电子邮件获取尽可能多的代码示例。非常感谢!如
3 回答
牧羊人nacy
TA贡献1862条经验 获得超7个赞
您还拥有Apache Commons CSV库,也许它可以满足您的需求。请参阅指南。在2014-11年更新为1.1版。
另外,对于万无一失的版本,我认为您需要自己编写代码...通过SimpleDateFormat选择格式并指定各种类型,如果与Date您的任何预先考虑的类型都不一样,则不是一个约会。
蛊毒传说
TA贡献1895条经验 获得超3个赞
我的方法不是从编写自己的API开始。生活太短了,还有更多亟待解决的问题。在这种情况下,我通常:
查找一个看起来像我想要的东西的图书馆。如果不存在,然后实现它。
如果确实存在一个库,但是我不确定它是否适合我的需求,请围绕它编写一个瘦适配器API,以便我可以控制它的调用方式。适配器API表示我需要的API ,并将这些调用映射到基础API。
如果该库不合适,我可以在不影响调用者的情况下以最小的努力在适配器API之下交换另一个库(无论是另一个开源库还是我自己写的东西)。
从某人已经写过的东西开始。奇怪的是,它会做您想要的。如有必要,您以后随时可以自己编写。OpenCSV与任何其他方法一样都是一个很好的起点。
添加回答
举报
0/150
提交
取消