如何快速批量将csv转换成excel文件

如何快速批量将csv转换成excel文件,第1张

快速批量将csv转换成excel文件步骤如下:

1、首先随便打开一个表格文件。

2、在开发工具标签页下有个宏功能。

3、打开宏窗口后,随便起个名字,新建。

4、箭头指的部分准备粘贴代码,代码粘贴下面的,其中目录部分换成你的csv文件所在的目录。

5、书写程序:

ChDir "C:\Users\Administrator\Desktop\新建文件夹"  

Dim sDir As String  

Dim curdir As String  

curdir = "C:\Users\Administrator\Desktop\新建文件夹"  

sDir = Dir(curdir &"\*.csv")  

While Len(sDir)      

Workbooks.Open Filename:=curdir &"\" &sDir      

Dim temp As String      

temp = Left(sDir, Len(sDir) - 4)      

ActiveWorkbook.SaveAs Filename:=curdir &"\" &temp &".xls", _          

FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _          

ReadOnlyRecommended:=False, CreateBackup:=False      

ActiveWorkbook.Close    

sDir = Dir  

Wend

6、点击运行按钮运行。

7、在页面中等待一会儿。

8、现在所有csv文件都有一分转化为xls的文件了。

Comma-Separated Value ( [卡门 赛婆乱提的] 逗号分隔)(CSV),因分隔符没有严格的要求,可以使用逗号,也可以使用其他字符(如制表符\t,分号等),所以CSV也被称为 逗号分隔或者其他字符分隔值 。csv文件是使用纯文本来存储表格数据(只能存储文本,不能存储二进制)。

构造器涉及到的三个参数:

注:若是设置解析的编码,需要在InputStreamReader对象中设置。

在上面我们可以使用readNext或者readAll进行逐行解读。但是opencsv提供了基于"策略"的映射,将CSV绑定到bean。

注:bean的类型只能为基本数据类型以及String类型,若是BigDecimal类型,那么将会抛出异常。

解析后的bean类:

csv文件:

通俗点就是列位置映射,csv文件中列位置对应到bean中的列。

需要注意的是,该策略会输出所有的行, 故,我们需要跳过某些行。

测试方法:

测试结果:

csv文件:

测试结果:

在csv获取的都是字符串,这种情况下应该使用转换器。将csv中的字段转换为对应的bean中的字段类型。

opencsv为我们提供了上面的两个转换器(我们可以参考,来实现自定义转换器)。使用 AbstractBeanField<T>类来实现转换器。

csv文件

注:若是列映射策略,则要使用@CsvCustomBindByPosition()注解。

测试结果:

所有的过滤器必须实现CsvToBeanFilter 接口

测试结果

(官网)csv官方文档

(官网)CSVParserBuilder——CSVParser的目的是获取单个字符串并根据分隔符,引号和转义字符将其解析为其元素。

(官网)CSVReaderBuilder类

(理论)原CSV类库:OpenCSV

(API)用opencsv文件读写CSV文件

(API)opencsv4.0 自定义规则


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8105285.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存