package com.zte.nva.dap.hadoop.csvreader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import au.com.bytecode.opencsv.CSVReader;
import au.com.bytecode.opencsv.CSVWriter;
/**
*
* @author
* @version v1.0
* @msg.get csv list
* @csv API : http://opencsv.sourceforge.net/apidocs/index.html
*/
public class CsvReaderTest
{
public static void main(String[] args)throws Exception
{
String file = "f:"+File.separator+"test.csv";
/**
* 测试写一个csv文件
*/
// new CsvReaderTest().writeCSV(file);
/**
* 读取指定列的csv文件
*/
// new CsvReaderTest().getCSVList1(file);
}
/**
* @param file,file demo adress
* @return list
* @description get all col cell value to add list
*/
private List<String> getCSVList1(String file)
{
//取特定列放到集合
List<String> list = new ArrayList<String>();
//取特定列放到数组
String[] csvArray ;
CSVReader reader = null;
try {
/*
* 获取所有列集合信息
* CSVReader reader = new CSVReader(new FileReader(file),'\t', '\''); */
reader = new CSVReader(new FileReader(file));
String [] nextLine;
System.out.println("一共有: " + reader.readNext().length+" 列");
StringBuffer sb = new StringBuffer();
while ((nextLine = reader.readNext()) != null)
{
//获取指定列的集合信息,放到集合中
list.add(nextLine[0]);
//取特定列放到数组
sb.append(nextLine[0]);
sb.append(",");
}
//遍历集合
for(String str1 : list){
System.out.println("value : " + str1);
}
System.out.println("***********************************************");
//遍历数组
csvArray = sb.toString().split(",");
for(String str2 : csvArray){
System.out.println("value : " + str2);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
finally {
if(reader != null){
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return list;
}
/**
* 生成一个大数据量的csv测试文件
*/
public void writeCSV(String file){
try
{
CSVWriter writer = new CSVWriter(new FileWriter(file), '\t');
long startTime=System.currentTimeMillis(); //获取开始时间
for(int i=0;i<100000;i++)
{
writer.writeNext(new String[]{String.valueOf(i)});
}
long endTime=System.currentTimeMillis(); //获取结束时间
System.out.println("程序运行时间: "+(endTime-startTime)+"毫秒");
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
javacsv_CsvReader:解析CSV文件
NULL 博文链接:https://snowboy886.iteye.com/blog/1969723
matlab开发-CSVreader。此类可用于将csv文件读入RAM或将csv文件从RAM保存到磁盘
matlab开发-csvreader。一种用于matlab的强大的逗号分隔值(csv)解析函数
CsvReader cr1 = new CsvReader(path); // 有中文的 CsvReader cr2 = new CsvReader(new FileReader(new File(path))); // 需要指定读入编码的 CsvReader cr = new CsvReader(new ...
用java 对csv文件的读写,提供了很便利的方法
CsvReader CsvReader -> I am using BufferedReader for its fast enough for a sequential access upto 100MB of data, the performance improvement is not so much as against using MappedByteBuffer. -> ...
csvReader 一个C ++类,用于对CSV执行基本操作用法用法很简单。 只要将文件csv.h在您的项目中就可以了。
csvreader-以正确的方式读取逗号分隔值(csv)格式的表格数据(使用零配置立即使用最佳实践) 主页:: 错误:: 宝石:: rdoc :: 论坛:: 最新消息对于额外的尾随值设置为默认解析器(双引号值V1.2.2新增的自动修复/校正/...
maven项目,可直接运行,CSV的读写.
CsvReader。 1)React实现了Csv Reader SPA应用程序。 2)用户界面允许用户上传csv文件(固定格式为附件CSV)。 3)CSv的解析和验证将在浏览器端进行。 4)它将显示带有CSV解析数据的预览表。 5)一旦用户单击“保存...
CsvReader可以读取任何字符集编码(也包含BOM表)以及可配置的分隔符和可选的stringquote(定界符)的.csv文件。 CsvWriter可以编写.csv文件,并支持与CsvReader相同的功能。 还有一些其他方便的可选配置值。 有关...
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
您可以使用 CSVReader#open 创建 CSVReader 实例。 scala > val reader = CSVReader .open( new File ( " sample.csv " )) 读取所有行 scala > val reader = CSVReader .open( new File ( " sample.csv...
Laravel开发-csv-reader Laravel 4-csv阅读器
此扩展程序可在几秒钟内将原始.csv转换为简单的html表,并在同一选项卡中在线显示它:为CSV Reader提供一些设置(分隔符,标题行,要跳过的行,文本链接),它将很好地格式化表,因此在数据所在的同一标签中,很容易...
这是一个java的工具类jar包,主要包含了csv相关的处理类。 CSVFormat CSVParser CSVPrinter CSVRecord ExtendedBufferedReader Lexer QuoteMode Token
它充满了有用的功能,例如CSVReader,CSVDownloader,readString,jsonToCSV,readRemoteFile等。 :wrapped_gift: 特征与JavaScript和TypeScript兼容易于使用直接解析CSV文件(本地或通过网络) 快速模式(非常快)...
该文档主要介绍java如何操作csv文件,在这里介绍了一个工具包的使用,也黏贴了java对于读取csv文件和写入csv文件时,对于大数据量的处理和安排,有效的解决了处理大数据是内存溢出问题
java 解析csv文件例子,csv文件 中文乱码问题