添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

.CSV文件是以逗号分割的数据仓储,读取数据时从每一行中读取一条数据元祖,也就是一条数据,再用字符分割的方式获取表中的每一个数据项。

package com.conn.csv;  
import java.io.BufferedReader;    
import java.io.FileReader;    
 * @desc: 读取csv文件 
 * @author: tzconn@163.com 
 * @time: 2018年3月22日16:22:41
public class TestRead {    
    public static void main(String[] args) {    
        try {    
            BufferedReader reader = new BufferedReader(new FileReader("*.csv"));//换成你的文件名   
            reader.readLine();//第一行信息,为标题信息,不用,如果需要,注释掉   
            String line = null;    
            while((line=reader.readLine())!=null){    
                String item[] = line.split(",");//CSV格式文件为逗号分隔符文件,这里根据逗号切分   
                String last = item[item.length-1];//这就是你要的数据了   
                //int value = Integer.parseInt(last);//如果是数值,可以转化为数值   
                System.out.println(last);    
        } catch (Exception e) {    
            e.printStackTrace();    
 

写入数据则注意数据逗号分隔的格式,以文件写入的方式即可。

package com.conn.csv;    
import java.io.BufferedWriter;    
import java.io.File;    
import java.io.FileNotFoundException;    
import java.io.FileWriter;    
import java.io.IOException;    
 * @desc: 写入数据到csv文件 
 * @author: tzconn@163.com 
 * @time: 2018年3月22日16:26:32
public class WriteCSV {    
  public static void main(String[] args) {    
    try {    
      File csv = new File("D:/writers.csv"); // CSV数据文件   
      BufferedWriter bw = new BufferedWriter(new FileWriter(csv, true)); // 附加   
      // 添加新的数据行   
      bw.write("\"张三\"" + "," + "\"2000\"" + "," + "\"2004\"");    
      bw.newLine();    
      bw.close();    
    } catch (FileNotFoundException e) {    
      // File对象的创建过程中的异常捕获   
      e.printStackTrace();    
    } catch (IOException e) {    
      // BufferedWriter在关闭对象捕捉异常   
      e.printStackTrace();    
 

以上内容参考自博客:https://blog.csdn.net/tzconn/article/details/79655892

在读取CSV文件并以“,”切割的时候,会出现一个问题:如果单元格内容中含有英文的逗号,那就会把单元格内的内容也切割开,解决办法如下:

String item[] = line.trim().split(",(?=([^\\\"]*\\\"[^\\\"]*\\\")*[^\\\"]*$)",-1);

这个正则表达式的含义是避免切割英文双引号内的英文逗号,原因是因为csv文件的单元格中有英文逗号的话,单元格的内容实际上是会被英文双引号包括起来。这个双引号使用excel打开的时候是看不到的,但是如果读进程序里就可以看到了(或者使用notepad++这样的编辑器打开也可以看到),所以我们可以使用这个正则表达式来解决切分单元格内容的问题。

.CSV文件是以逗号分割的数据仓储,读取数据时从每一行中读取一条数据元祖,也就是一条数据,再用字符分割的方式获取表中的每一个数据项。package com.conn.csv; import java.io.BufferedReader; import java.io.FileReader; /** * @desc: 读取csv文件 * @author: tzconn@163.com * @time: 2018年3月22日16:22:41 */ public .
最近要做csv文件的导出,因为csv文件是用逗号隔开的文本文件,用excel打开csv文件的时候会按逗号单元格。导致导出来的数据有的包含逗号的被隔开在多个单元格里面。 解决方式: 把数据逗号加上双引号,就可以避免被解析,可以防止上面的问题出现。 String value =json.getString(title); if(json.getString(title).contains(",")) { value = "\""+value+"\"";
一. 对于CSV读写既可以像读写txt文件似的读写//读文件 InputStreamReader read = new InputStreamReader( new FileInputStream(file),encoding);//考虑到编码格式 BufferedReader bufferedReader = new BufferedReader(
众所周知,csv文件默认以逗号“,”分割数据,那么在scala命令行里查询的数据: 可以看见,字段里就包含逗号“,”,那接下来切割的时候,这本应该作为一个整体的字段会以逗号“,”为界限进行切割为多个字段。 现在来看看这里的_c0字段一共有多少行记录。 记住这个数字:60351行 写scala代码读取csv文件并以逗号分隔符来分割字段 val lineRDD = sc.textFile("xxxx/xxx.csv").map(_.split(",")) 这里只读取了_c0一个字段,否则会报数组下标越
项目有个功能,要求记录单据从上一级审批到下一级审批的所需时间,不常用日期转换之类的东西,所以记录在此,以备后用。 package com.tdhc.puPriceParityManagement.util; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; 错误代码: 错误原因:输出流关闭之后,socket也已经关闭,不能再次发送response,所以导致错误的就是return的返回值信息,这时候把return res;改成return null;就可以了,这样就不会因为需要返回信息而需要再次发送response,错误就解决了 附上参考的大佬博客:点击跳转 String str = “000000001234034120”; String newStr = str.replaceAll("^(0+)", “”); System.out.println(newStr); 输出结果:1234034120 包含有“/”,“-”这样特殊字符,以及除了特殊字符以外还包含英文字母的情况【比如00.
背景:项目用到邮件发送功能,需要将数据导入excel表格然后发送给供应商,第一次做的时候是直接创建了一个excel,领导说比较丑,就找甲方要了个模板,所以本篇文章除了介绍直接生成excel导入数据的功能以外,也介绍按照固定模板的方式导入数据的功能。 1.新生成一个Excel,并将数据导入 package com.tdhc.common.util; import com.tdhc.common....