4.java逐行读取txt,放入list中

import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileWriter;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;import
java.util.List;

import org.junit.Before;import
org.junit.Test;

import com.vianet.blockchain.web3j.support.constants.CommonConstant;import com.vianet.blockchain.web3j.support.constants.InitConfig;import com.vianet.blockchain.web3j.support.exceptions.Web3jException;

public static void main(String[] string) throws Exception {
try {
long start = System.currentTimeMillis();

        List<String> moneyAccountList = new ArrayList<String>();
        List<String> noMoneyAccountsList = new ArrayList<String>();

        BufferedReader moneyAccountBr = new BufferedReader(new InputStreamReader(new FileInputStream(new File("/Users/yinzf/Documents/contransaction-properties/1000_money_accounts.txt")), "UTF-8"));
        BufferedReader noMoneyAccountBr = new BufferedReader(new InputStreamReader(new FileInputStream(new File("/Users/yinzf/Documents/contransaction-properties/1000_no_money_accounts.txt")), "UTF-8"));
        String moneylineTxt = null;
        String noMoneylineTxt = null;

        while ((moneylineTxt = moneyAccountBr.readLine()) != null) {
            moneyAccountList.add(moneylineTxt.substring(moneylineTxt.indexOf("accountAddress=")+15, moneylineTxt.length()));
        }

        while ((noMoneylineTxt = noMoneyAccountBr.readLine()) != null) {
            noMoneyAccountsList.add(noMoneylineTxt.substring(noMoneylineTxt.indexOf("accountAddress=")+15, noMoneylineTxt.length()));
        }
        moneyAccountBr.close();
        noMoneyAccountBr.close();

        System.out.println("moneyAccounts长度:"+moneyAccountList.size()+ " moneyAccounts的第一个元素:"+moneyAccountList.get(0) +" moneyAccounts最后一个元素:"+moneyAccountList.get(999));
        System.out.println("noMoneyAccounts长度:"+noMoneyAccountsList.size()+ " noMoneyAccounts的第一个元素:"+noMoneyAccountsList.get(0) +" noMoneyAccounts最后一个元素:"+noMoneyAccountsList.get(999));

        //处理并发转账
        for(int i=0;i<moneyAccountList.size()/2;i++){
            long start1 = System.currentTimeMillis();
            AccountRouter accountRouter = new AccountRouter();
            String transactionHash = accountRouter.transferEther(moneyAccountList.get(i), "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92",
                    noMoneyAccountsList.get(i), "0.0001");
            System.out.printf("++++++第"+i+"   次transactionHash: [%s]n", transactionHash);
            long end1 = System.currentTimeMillis();
            System.out.printf("======第"+i+"   次充值耗时:[%s]sn", (end1 - start1)/1000);
        }

        long end = System.currentTimeMillis();
        long out = (end - start) / 1000;

        System.out.printf("~~~~~~~~~~~~~处理1000个用户转换总耗时:[%s]s n", out);

    } catch (Exception e) {
        System.out.println("errorMsg=" + e.getMessage());
        e.printStackTrace();
    }
}