今天帮同学处理数据, 主要是从1w多条记录中随机获取8k条, 然后再从8k条记录中随机获取2k条记录. 最后将2k条记录中随机分成10组,使得每组的记录都不重复.

  下面将我的代码都贴上来, 好以后处理csv文件.

  1.   首先使用第三方的jar文件 javcsv.jar : 链接: http://pan.baidu.com/s/1qW5b3u0 密码: qjmx
  2.   虽然该类库可以相对方便提供操作, 但是为了方便处理, 我将处理的字段都放在配置文件中, 然后将每一条记录都封装为Map<String, String>对象,我将读写的基础类封装为 CSVBasic:
    package spt.csv;
    
    import java.io.Serializable;
    import java.nio.charset.Charset;
    
    import spt.util.PropertyConfig;
    
    /**
     * CSV文件操作基础类.
     */
    abstract public class CSVBasic implements Serializable {
    
        private Charset charset;    //编码.
        private char delimiter;    //分隔符.
        private String fileName;
    
        /**
         * 默认编码.
         * 
         * @return
         */
        public static Charset getDefaultCharset() {
            return Charset.forName(PropertyConfig.getProperty("charset"));
        }
    
        /**
         * 默认分割符.
         * 
         * @return
         */
        public static char getDefaultDelimiter() {
            return PropertyConfig.getProperty("delimiter").charAt(0);
        }
        
        public String getFileName() {
            return fileName;
        }
    
        public void setFileName(String fileName) {
            this.fileName = fileName;
        }
    
        public Charset getCharset() {
            return charset;
        }
    
        public void setCharset(Charset charset) {
            this.charset = charset;
        }
    
        public void setDelimiter(char delimiter) {
            this.delimiter = delimiter;
        }
    
        public char getDelimiter() {
            return delimiter;
        }
    
        public CSVBasic() {}
        
        /**使用默认的分隔符和编码.
         * @param fileName
         */
        public CSVBasic(String fileName) {
            this(fileName, getDefaultDelimiter(), getDefaultCharset());
        }
        
        public CSVBasic(String fileName, char delimiter, Charset charset) {
            setFileName(fileName);
            setDelimiter(delimiter);
            setCharset(charset);
        }
    
        /**
         * 
         */
        private static final long serialVersionUID = 7916808982930771124L;
    }
    View Code

相关文章:

  • 2021-07-05
  • 2021-11-24
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2021-12-03
  • 2022-01-07
猜你喜欢
  • 2021-10-24
  • 2021-05-22
  • 2022-12-23
  • 2021-06-28
  • 2022-12-23
  • 2021-11-07
  • 2022-12-23
相关资源
相似解决方案