zoukankan      html  css  js  c++  java
  • java写文件

      今天在测试数据库语法时,可能需要大量数据,但手头有没有这样的数据,于是想起了之前学过java语言,动手通过程序创建一个数据文件。

      程序不是太复杂,但是也要两三年没碰java了,几乎遗忘的差不多了,动手网上找了些资料:

    package com.data;
    
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.Random;
    
    public class ProduceData {
    
        public static void main(String[] args) throws IOException {
    
            // 获取要写入文件
            File file = new File("D:\Data\member_delta.txt");
    
            // 文件不存在首先创建文件
            if (!file.exists()) {
                file.createNewFile();
            }
            // 以下是两种写入文件的类,FileOutPutStream的方法太单调,还是第二种BufferedWrite方法多些
            FileOutputStream out = new FileOutputStream(file, true);
            BufferedWriter bw = new BufferedWriter(new FileWriter(file, true));
            
            // random 生产随机数
            Random random = new Random();
            
            // 获取当前日前
            Date date = new Date();
            Calendar cal = Calendar.getInstance();
            cal.setTime(date);
    
            // 循环写入数据
            for (int i = 0; i < 10; i++) {
                
                // 在原有的日期上多加一天
                cal.add(Calendar.DATE, +1);
    
                Integer o = i;
                
                // 拼接字符串
                StringBuffer sb = new StringBuffer();
                Integer j = random.nextInt(291) + 100;
                Integer m = random.nextInt(291) + 100;
                if (o.toString().indexOf("8") != 0) {
                    sb.append("000"
                            + j.toString()
                            + " "
                            + m.toString()
                            + " I "
                            + (new SimpleDateFormat("yyyy-MM-dd")).format(cal
                                    .getTime()));
                } else if (o.toString().indexOf("5") != 0) {
                    sb.append("000"
                            + j.toString()
                            + " "
                            + m.toString()
                            + " U "
                            + (new SimpleDateFormat("yyyy-MM-dd")).format(cal
                                    .getTime()));
                } else {
    
                    sb.append("000"
                            + j.toString()
                            + " "
                            + m.toString()
                            + " D "
                            + (new SimpleDateFormat("yyyy-MM-dd")).format(cal
                                    .getTime()));
                }
                // 两种文件类的写入方法
                // BufferedWrite类添加数据是累加的,第二次添加数据会保留第一次添加的数据FileOutPutStream类会覆盖之前写入的数据。
                // out.write(sb.toString().getBytes("UTF-8"));
                bw.write(sb.toString());
                // 文件中添加数据换行
                bw.newLine();
    
            }
            out.close();
            bw.close();
            System.out.println("write data Ok");
            
        }
    
    }

    中间的BufferString ,根据自己的需求改变append什么样的数据格式。

    东西很简单,但用起来还是蛮爽的。

     

  • 相关阅读:
    HTTP断点续传 规格严格
    Java Shutdown 规格严格
    linux 命令源码 规格严格
    JTable调整列宽 规格严格
    linux 多CPU 规格严格
    Hello can not find git path 规格严格
    Kill 规格严格
    拜拜牛人 规格严格
    Swing 规格严格
    Debugging hangs in JVM (on AIX but methodology applicable to other platforms) 规格严格
  • 原文地址:https://www.cnblogs.com/daojiao/p/4597577.html
Copyright © 2011-2022 走看看