java 分割csv数据的实例详解

实际需要解析的csv中很多都是从excel中转过来的,数据中本身包含了逗号的数据导致split的过程中发现数据对不上,因此,基于这种特性,重新写了一个csv数据的分割方法:

实现代码:

public static String[] split(String line) {

List list = new ArrayList<>();

int start = 0;

int end = -1;

while(true) {

start = end + 1;

if(line.charAt(start) == '\"') {

end = line.indexOf("\"", start ) + 1;

} else {

end = line.indexOf("," , start );

}

if(end < 0) {

//最后了

end = line.length() ;

}

String p1 = line.substring(start, end);

list.add(p1);

if(end >= line.length() - 1) {

break;

}

}

return list.toArray(new String[0]) ;

}

利用的特性为:excel转储csv的时候,如果列值包含逗号会用双引号括起来。

以上就是java 分割csv数据的简单实例,如有疑问大家可以到本站留言,讨论,或者到本站搜索相关内容,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

java 分割数据_java 分割csv数据的实例详解相关推荐

  1. java 接口函数_Java函数式接口Supplier接口实例详解

    这篇文章主要介绍了Java函数式接口Supplier接口实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 JDK提供了大量常用的函数式接口以丰 ...

  2. java supplier接口_Java函数式接口Supplier接口实例详解

    这篇文章主要介绍了Java函数式接口Supplier接口实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 JDK提供了大量常用的函数式接口以丰 ...

  3. java 静态 编译_Java中的动态和静态编译实例详解

    Java中的动态和静态编译实例详解 首先,我们来说说动态和静态编译的问题. Q: java和javascript有什么区别? 总结了一下:有以下几点吧: 1.首先从运行环境来说java代码是在JVM上 ...

  4. mysql删除重复数据只保留一条_mysql查找删除重复数据并只保留一条实例详解

    有这样一张表,表数据及结果如下: school_id school_name total_student test_takers 1239 Abraham Lincoln High School 55 ...

  5. php去除重复的数据保留一条,mysql查找删除重复数据并只保留一条实例详解

    有这样一张表,表数据及结果如下: school_id school_name total_student test_takers 1239 Abraham Lincoln High School 55 ...

  6. java 获取用户的MAC地址多种方法实例详解

    java 获取用户的MAC地址多种方法实例详解 这篇文章主要介绍了JAVA实现获取用户的MAC地址的多种方法实例,需要的朋友可以参考下 java实现获取用户的MAC地址方法: 方法一:将本机地址与局域 ...

  7. mongodb java查询_java操作mongoDB查询的实例详解

    java操作mongo查询的实例详解 前言: MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库 ...

  8. java 获取oracle表结构_Java导出oracle表结构实例详解

    Java导出oracle表结构实例详解 发布于 2020-7-20| 复制链接 摘记:  Java导出oracle表结构实例详解最近用到的,因为plsql是收费的,不让用,找了很多方法终于发现了这个. ...

  9. java打印菱形图案_java打印出菱形图案实例详解

    第一步:首先对图像进行解析 想要打印该图形必须要进行多层循环嵌套,分两个部分进行打印. 第一部分为上半部分前四行,他们是递增的关系,后半部分后三行为递减关系,由此可以得出我们需要写两个打的循环.并且由 ...

  10. java中的装饰模式讲解,java 中设计模式(装饰设计模式)的实例详解

    搜索热词 java 中设计模式(装饰设计模式)的实例详解 应用场景: 在不对原有对象类进行修改的基础上,给一个或多个已有的类对象提供增强额外的功能. 我觉得可以从字面理解,装饰,装饰房子.房子可以看成 ...

最新文章

  1. python量化外汇交易_用Python实现一个Dual Thrust数字货币量化交易策略
  2. 2_1 AdpterMode.cpp 适配器模式
  3. spring默认缓存管理器_使用Spring的缓存管理器缓存Web内容
  4. linux批量部署war工具,Linux 批量一键部署工具 Expect
  5. 【安卓开发】项目的目录结构分析
  6. HTTP 多处理模块(MPM)
  7. 百度人脸识别问题整理
  8. 金蝶K3Cloud中DBUtils的用法
  9. 答题器——游戏工作室的亲密搭档!
  10. 导航栏 下拉菜单的制作
  11. pdf横向打印java_java通过html生成pdf,支持css和图片以及横向打印
  12. 35岁的程序员该何去何从?拒绝给自己设限!!
  13. Mybatis自动生成代码插件generator
  14. 使用C#启动默认Internet浏览器
  15. 孩子学python_【二孩家庭要注意什么】二孩家庭要怎么教育_二孩家庭的孩子最好间隔几岁 - 妈妈网百科...
  16. Zero-sho原先的升级版:hourglass网络:U-Net
  17. c语言scanf(%d%d,ab)解释与EOF的使用
  18. iis服务器设置为调试程序状态,Win10 VS 使用本地 IIS 服务器调试程序问题总结
  19. 各种排序算法比较(1):稳定性
  20. 没办法了,用敏捷吧?

热门文章

  1. qiankun 传统项目配置_微前端 qiankun 项目实践
  2. 电脑显示没有被指定在上运行_可以桌面显示的便条便签怎么弄?有没有电脑桌面上的便条贴...
  3. 微信小程序 环形进度条_微信小程序:实时圆形进度条实现
  4. 精致的App登录页设计欣赏给你灵感
  5. 青花瓷png免扣素材,中国风的标志素材
  6. 如何腾出计算机内存,电脑C盘又飘红?教你这样清理内存,可以轻松腾出大量空间...
  7. java logging 格式化_Spring源码使用java.util.logging打印日志
  8. numpy 矩阵乘法_NumPy 运算规则总结
  9. LeetCode-----旋转数组的最小数字
  10. Linux BPF hello world C语言示例代码