private void writeFYFileToTxt(List list, HttpServletRequest request, String drxh, FileOutputStream fos, String currDate, int start, int end, List<P2pLoanExtInfo> extList,List<P2pProductRate> pprList) throws APSException {
    try {
       List<P2pRepayInfo> ePriList = getConvertRepayInfoList(list, start, end);//去list中的第n到第m条数据
   
       // 生成 汇总信息  0002900F0230755|AC01|20150611|001A|425|1061199.91
       StringBuilder collectInfo = new StringBuilder(ConstantsApplication.MERCHANT_NUMBER);
       collectInfo.append("|").append(ConstantsApplication.AC_OPERATION_CODE).append("|").append(currDate);
       collectInfo.append("|").append(drxh + "A").append("|").append(ePriList.size()).append("|").append(countFYTotalAmount(ePriList));
       fos.write((collectInfo.toString() + getTxtNewLine()).getBytes());
       fos.flush();
       collectInfo = null;
       // 生成明细信息

      //000001|0105|622700182400007108X|郑红|1402.75|14569|FZ201404220042|13950316334
      //000002|0105|622700189254026136X|李丽|2104.13|15175|FZ201404230043|18605935575
     for (int i = 0; i < ePriList.size(); i++) {
        P2pRepayInfo ePri = (P2pRepayInfo) ePriList.get(i);
        StringBuilder detailInfo = new StringBuilder(StringOperator.getSeq(i + 1)); // 明细序列
        detailInfo.append("|").append(ePri.getRepayOpenBankCode());
        detailInfo.append("|").append(ePri.getRepayAccountNo()).append("|").append(ePri.getLoanName()).append("|");
        detailInfo.append(ePri.getMonthRtnAmount()).append("|").append(ePri.getPriNumber()).append("|").append(ePri.getLoanContractNo()).append       ("|").append(ePri.getLoanNamePhone());
        fos.write((detailInfo.toString() + getTxtNewLine()).getBytes());//内容自动换行
        fos.flush();//本次读取全部写入文件
        detailInfo = null;
      }
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

//获得换行符
 private String getTxtNewLine() {
  byte[] newLine = new byte[2];
  newLine[0]=0x0d;
  newLine[1]=0x0a;
  return new String(newLine);
 }

//序列化字符串

public static String getSeq(int seq){
  String rslt="";
  try{
   String seqStr=String.valueOf(seq);
   if(seqStr.length()==1){
    rslt="00000"+seqStr;
   }
   if(seqStr.length()==2){
    rslt="0000"+seqStr;
   }
   if(seqStr.length()==3){
    rslt="000"+seqStr;
   }
   if(seqStr.length()==4){
    rslt="00"+seqStr;
   }
   if(seqStr.length()==5){
    rslt="0"+seqStr;
   }
   if(seqStr.length()==6){
    rslt=seqStr;
   }
  }
  catch(Exception e){
   e.printStackTrace();
  }
  return rslt;
 }

交易Txt文件导出的更多相关文章

  1. 用DataGridView导入TXT文件,并导出为XLS文件

    使用 DataGridView 控件,可以显示和编辑来自多种不同类型的数据源的表格数据.也可以导出.txt,.xls等格式的文件.今天我们就先介绍一下用DataGridView把导入txt文件,导出x ...

  2. php 读取网页源码 , 导出成txt文件, 读取xls,读取文件夹下的所有文件的文件名

    <?php // 读取网页源码$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLO ...

  3. dataview将excel表格的数据导出成txt文件

    有时候需要处理大量的数据,且这些数据又存在于excel表格内,在平时的时候,我是非常喜欢这样的数据的,因为只要是excel表格内的数据,处理起来的方法就很方便.也可能我平时遇见的数据总是以一种杂乱无章 ...

  4. 将Maple输出的LaTex导出到txt文件

    将Maple输出的LaTex导出到txt文件 1. 生成LATEX Maple可以把它的表达式转换成LATEX, 使用latex命令即可: > latex(x^2+y^2=z^2); {x}^{ ...

  5. Java导出List集合到txt文件中——(四)

    有时候,需要将数据以一定格式导出到txt文件中.利用Java的IO可以轻松的导出数据到txt中. package Action.txt; import java.io.BufferedWriter; ...

  6. C# DataGirdview手动添加数据,导出txt文件并自动对齐

    //DataGirdview手动添加数据 private void btnDataGirdView_Click(object sender,EventArgs e) {       dataGridV ...

  7. asp mvc 导出txt 文件泛型方法

    asp mvc 导出txt 文件泛型方法分享: public static void ExportFile<T>(T obj) { StringBuilder str = new Stri ...

  8. sql 存储过程导出指定数据到.txt文件(定时)

    需求:每天生成一份txt文件数据,供第三方通过http方式调用 方法: 1.新建存储过程: USE [LocojoyMicroMessage] GO /****** Object: StoredPro ...

  9. Excel 导出指定行为txt文件(VBA,宏)

    要从Excel 多个sheet内导出指定行为txt文件,懒得用C#了,写个VBA宏 Sub Export() Dim FileName As Variant Dim Sep As String Dim ...

随机推荐

  1. (四)文本编辑器Vim/Vi

    目录 前言 常用命令 扩展应用 总结 本系列先前的随笔位于新浪博客 前言 Vi和Vim都是文本编辑器,不同的是Vim是Vi的升级版本,它不仅兼容Vi的所有指令,而且还有一些新的特性在里面. Vim/V ...

  2. android操作sdcard中的多媒体文件(二)——音乐列表的更新

    android操作sdcard中的多媒体文件(二)——音乐列表的更新 原文地址 在上一篇随笔中,我介绍了如何在程序中查询sdcard内的多媒体文件,并且显示到播放列表中,但是,如果在sdcard内删除 ...

  3. jquery导航动画

    经常在网上看到的,鼠标在导航上移动时,导航底部的横条会自动移动到鼠标悬浮的导航项上. 效果如下图: 利用jquery的 animate 函数,很好实现.代码很简单! 代码如下: <!DOCTYP ...

  4. android学习笔记29——Intent/IntentFilter

    Intent/IntentFilter Intent封装android应用程序需要启动某个组件的“意图”,Intent还是应用程序组件之间通信的重要媒介. EG:Activity之间需要交换数据时,使 ...

  5. jQuery-webcam(.NET)实现WEB摄像头监控

    jQuery-webcam是一个非常好用的摄像头监控工具,DEMO可官方下载地址http://www.xarg.org/project/jquery-webcam-plugin/ 1.下载解压后,jq ...

  6. WeX5和BeX5比较

    http://wex5.com/cn/wex5和bex5比较/ WeX5和BeX5比较 许多对WeX5和BeX5略有了解得人都知道,WeX5和BeX5是完全共用前端框架技术的.但是WeX5和BeX5是 ...

  7. 使用eclipse和maven生成java web程序war包

    一.eclipse中,在需要打包的项目名上右击,然后把鼠标光标指向弹出框中的“run as”: 二.之后会看到在这个弹出框的右侧会出现一个悬浮窗,如下: 三.在上边的第二个悬浮窗鼠标点击“maven  ...

  8. JAVA赋值运算符

    赋值预算符,简单来说就是把以及定义了值的变量值赋值给刚定义的变量 例如,a学员,与b学员的成绩相同,a学员是80分,我们根据a学员的成绩,输出b学员的成绩. public class Test{ pu ...

  9. MongoDB基本命令的使用

    成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作. 输入help可以看到基本操作命令: show dbs:显示数据库列表 show collections:显示 ...

  10. java内部类的作用分析

    提起Java内部类(Inner Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested Class),关于这两者的区别与联系,在下文中会有对比.内部类从表面上看,就 ...