精华内容
下载资源
问答
  • /*** 根据指定行写数据** @param lineNumber 要存的行数* @param data 要存储的数据*/public static void setAppointedLineNumber(int lineNumber, String data) throws IOException {Path path = Paths.get...

    /**

    * 根据指定行写数据

    *

    * @param lineNumber 要存的行数

    * @param data 要存储的数据

    */

    public static void setAppointedLineNumber(int lineNumber, String data) throws IOException {

    Path path = Paths.get(configuration);

    List lines = Files.readAllLines(path, StandardCharsets.UTF_8);

    lines.set(lineNumber - 1, data);

    Files.write(path, lines, StandardCharsets.UTF_8);

    }

    /**

    * 1.根据指定行读数据

    *

    * @param lineNumber

    */

    public static String readAppointedLineNumber(int lineNumber) {

    String appointedLine = "";

    FileReader in = null;

    LineNumberReader reader = null;

    try {

    in = new FileReader(configuration);

    reader = new LineNumberReader(in);

    long totalLine = Files.lines(Paths.get(configuration)).count();

    if (lineNumber < 0 || lineNumber > totalLine) {

    throw new Exception("指定行【" + lineNumber + "】不在文件行数范围内");

    }

    int line = 1;

    reader.setLineNumber(lineNumber);

    long i = reader.getLineNumber();

    String s = "";

    while ((s = reader.readLine()) != null) {

    if (i == line) {

    appointedLine = s;

    break;

    }

    line++;

    }

    return appointedLine;

    } catch (FileNotFoundException e) {

    e.printStackTrace();

    } catch (IOException e) {

    e.printStackTrace();

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    closeResource(in, reader);

    }

    return appointedLine;

    }

    /**

    * 2.关闭资源

    *

    * @param in

    * @param reader

    */

    public static void closeResource(FileReader in, LineNumberReader reader) {

    try {

    if (reader != null) {

    reader.close();

    }

    if (in != null) {

    in.close();

    }

    } catch (IOException e) {

    e.printStackTrace();

    }

    }

    标签:Java,String,读写,reader,指定,param,printStackTrace,lineNumber,null

    来源: https://blog.csdn.net/sz793919425/article/details/110920319

    展开全文
  • java按行读写文本数据

    2017-08-31 09:59:01
    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import j
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.io.PrintWriter;
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.List;
    import java.util.Map;


    public class test1 {


    public static void main(String[] args) throws IOException {

    try {
    //读取数据
               BufferedReader br = new BufferedReader(new FileReader("C:\\Users\\xugui\\Desktop\\my_bvlc_alexnet_HZ.log.txt"));
               //写入数据
               PrintWriter out = new PrintWriter(new BufferedWriter(
                       new FileWriter("C:\\Users\\xugui\\Desktop\\1.txt", true)));
               //line用来存放一行的字符串
               String line = null;
               int n=1;
               //按行读取
               while ((line = br.readLine()) != null) {
                if(n==1){
                n++;
                continue;
                }   
                System.out.println(line);
                //分割字符串
                String str[]=line.split(",");
                //按行写入
                out.println(str[0]+" "+str[3]);
     
                   }
               if (br != null) {
                //关闭输入流
                   br.close();
               }
               if (out != null) {
                //关闭输出流
                   out.close();
               }


           } 
    //捕获异常
    catch (FileNotFoundException e) {
               e.printStackTrace();
           } catch (IOException e) {
               e.printStackTrace();
           }
    //完成标志
    System.out.println("over");


    }
      
    }
    展开全文
  • 第二行数据:for (int i = 0; i < dictInfo.size(); i++) {HSSFRow dataRow = sheet.createRow(i + 1);dataRow.setHeight((short) (15 * 20));JavaList l = (JavaList) dictInfo.getKeys();String s = (String)...

    写第二行数据:

    for (int i = 0; i < dictInfo.size(); i++) {

    HSSFRow dataRow = sheet.createRow(i + 1);

    dataRow.setHeight((short) (15 * 20));

    JavaList l = (JavaList) dictInfo.getKeys();

    String s = (String) l.get(i);

    JavaList ll = (JavaList) dictInfo.get(s); //获取列数据

    for (int j = 0; j < ll.size(); j++) {

    Cell dataCell = dataRow.createCell(j);

    HSSFFont dataFont = wb.createFont();

    dataFont.setFontName("华文细黑");

    dataFont.setFontHeightInPoints((short) 10);

    dataFont.setBoldweight(HSSFFont.BOLDWEIGHT_NORMAL);

    HSSFCellStyle dataStyle = wb.createCellStyle();

    dataStyle.setAlignment(HSSFCellStyle.ALIGN_LEFT);

    dataStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);

    dataStyle.setFont(dataFont);

    dataCell.setCellStyle(dataStyle);

    dataCell.setCellValue(ll.get(j).toString());

    }

    }

    dictInfo中数据:

    {

    "ordercode":["订单号0","订单号1"],

    "tradeno":["交易号0","交易号1"],

    "procode":["技术产品代码0","技术产品代码"],

    "proname":["技术产品名称0","技术产品名称1"]

    }

    7abda764aa2cea8fe458fd917d1ecdb3.png

    a8c8663b709ca3a395b2e6a803b81c8d.png

    展开全文
  • ​ 我们都知道poi较为方便的的写入方法是按行写入数据,但是如果需要合并单元格的话比较好的办法是按列写入数。下面我介绍一种从pojo类中取出数据并按列写入的方式。 ​ 需要注意的是,第二次获取行对象时应该使用...

    java用POI写Excel按列写入数据

    ​ 我们都知道poi较为方便的的写入方法是按行写入数据,但是如果需要合并单元格的话比较好的办法是按列写入数。下面我介绍一种从pojo类中取出数据并按列写入的方式。

    ​ 需要注意的是,第二次获取行对象时应该使用get方法,而不是create,如果一直使用create()会导致前一行输入的数据消失,最后变成只生成了最后一行的数据

    //	        获取每行参数
    	    HSSFRow row = null;
    	    HSSFCell cell = null;
    	    CellRangeAddress region = null;
            
    //		获取每列标题和对应的属性方法
    	    String[] tittle = {"企业名称", "主管区领导", "服务包派发时间", "服务管家", "服务管家联系人", "服务管家联系方式", "属地服务生", "属地联系人",
    	    			"属地联系方式", "服务包类别", "企业联系人", "企业联系方式", "企业基本情况", "诉求类型", "诉求详情", "专项服务措施", "诉求是否办结", 
    	    			"属地服务生回访信息", "企业意见", "企业满意度", "承办单位", "预计办结时间", "进展情况", "反馈时间", "是否办结", "备注"};
    	    String[] methods = {"getComName", "getLeader", "getPackTime", "getServicer", "getServicePerson", "getServicePhone", 
            		"getPossessionService", "getPossessionPerson", "getPossessionPhone", "getPackType", "getComPerson", "getComPhone", 
            		"getComDesc", "getAppealType", "getAppealDesc", "getMeasure", "getAppealStatus", "getVisit", "getComSuggest",
            		"getComStatus", "getDept", "getPredictTime", "getCondition", "getFeedbackTime", "getManageStatus", "getRemark"};
    	    
    	    
    	    
    //	       缓存一个字符串
    	    String strTemp = null;
    //	       记录从第几行开始相等
    	    int temp = 0;
    	    int i = 0;
    //	    外层循环次数为列的个数
    //	    for(int i = 0; i < tittle.length; i++){
    //	    	判断是否为第一个,如果是第一次就创建一列,如果不是就直接获取一列
    	    	if(i == 0){
    	    		row = sheet.createRow(0);
    	    	}else{
    	    		row = sheet.getRow(0);
    	    	}
    //	    	设置每列标题
    		    cell = row.createCell(i);
    		    cell.setCellValue(tittle[i]);
    		    
    //		    内层循环行数,也是就数据的总数
    		    for(int j = 0;j < list.size();j++){
    //		    	同样判断是否为第一个,如果是第一次就创建一列,如果不是就直接获取一列	
    		    	if(i == 0){
    		    		row = sheet.createRow(j+1);
    		    	}else{
    		    		row = sheet.getRow(j+1);
    		    	}
    //		    	获取此次的bean
    		    	ExcelPoiBean exbean= list.get(j);
    			    cell = row.createCell(i);
    //			        通过反射获取此字段的给方法
    			    String str = String.valueOf(exbean.getClass().getMethod(methods[i]).invoke(exbean));
    			    
    			    
    //			    进行合并单元格的判断
    			    if(j == 0){
    			    	strTemp = str;
    			    }else{
    			    	if(!strTemp.equals(str)){
    		    			region = new CellRangeAddress(temp, j-1, i, i);
    		    			sheet.addMergedRegion(region);
    		    			strTemp = str;
    		    			temp = j;
    				    }
    			    }
    			    
    //			         置入数据
    			    cell.setCellValue(str);
    		    }
    //	    }
    		    
    
    展开全文
  • 按行读入取成绩单,并在该行的最尾部加上该同学的总成绩,然后再将该行写入到一个名字为grates.txt的文件中 代码实现 方法①: package lei; import java.io.*; public class dahfcbdcj { public stat
  • JAVA之NIO按行读写大文件,完美解决中文乱码问题

    万次阅读 多人点赞 2016-02-01 20:46:20
    要将百万级别的txt数据插入到数据库中,由于内存方面的原因,因此不可能一次读取所有内容,后来在网上找到了解决方法,可以使用NIO技术来处理,于是找到了这篇文章http://www.sharejs.com/codes/java/1334,...
  • 我是采用监控键盘回车键来将表内最后一行数据存入数据库内的,为什么我回车后连函数System.out.print(row[i])都没有显示出来呢,数据库也没有刷新。。。。Stringsql="select*frompe...我是采用监控键盘回车键来将...
  • 作为一个基本知识,对读写文件相信我们在代码的时候都遇到过,对于我而言我一般是直接BufferReader或者BufferWriter安排上就完事了,但是我们的实验从来不让我失望,他这一次要求我们用三种不同的方式进行读写文件...
  • 在之前的学习过程中,经常会遇到将文本文件中的数据读取到数组或其他数据结构中。每次遇到,总是在网上搜索代码解决,解决之后并没有总结复习,因此在下一次遇到同样的问题时,又重复之前的过程。这样周而复始,并...
  • java向文件中追加内容与读写文件内容源码实例代码向文件尾加入内容有多种方法,常见的方法有两种:RandomAccessFile类可以实现随机访问文件的功能,可以以读写方式打开...public void write(int pos)将数据写到...
  • java文件中的分隔符(空格、换符等)逐项读取文件中的数据C++中可以根据文件中的空格、换符、制表符等分隔符来依次读取文件中的数据,最近在java工程中遇到类似的问题,在java中也需要根据分隔符读取文件里的...
  • 对大数据文本文件读取(按行读取)的优化,目前常规的方案有三种,第一种LineNumberReader,第二种RandomAccessFile,第三种是内存映射文件在RandomAccessFile基础上调用getChannel().map(...);代码提供在...
  • json 按行读写文件

    千次阅读 2019-10-08 21:41:47
    在进行大量数据读写时,一般json不能读写特别大...# 按行写文件 import json data = [ {'id': '123456', 'text': ' python'}, {'id': '456789', 'text': ' java'} ] for item in data: with open('data.json', ...
  • 今天是学习java的第20天,今天接着学习了IO的相关知识。基本的学习内容是对象流;序列话和反序列化;文件夹的复制;装饰器模式等。我们前边学到的数据流只能实现对基本数据类型和字符串类型的读写,并不能读取对象...
  • dr,当用户单击特定的第5列中的按钮时,如何在表单中返回表的第1列值?嗨,您好!长时间听众,第一次来电.对于这个问题,我非常感谢你的帮助.我正在使用Spring Boot和Thymeleaf编写服务器应用程序.服务器与许多设备...
  • 思考:现在知道如何用读每数据的,怎么把他们分开? //从文件中读取 File inFile=new File("E:\\input.txt"); BufferedReader br=new BufferedReader(new FileReader(inFile)); String firstLine=...
  • import java.io.*; public class Main { public static void main(String[] args) { try { BufferedWriter out = new BufferedWriter(new FileWriter("sanguo.txt")); out.write("三国教程"); out.close();
  • 之前通过 java nio 实现了按行读写文件的方法,但由于是单线程读写,所以当读取数据量比较大的文件时性能肯定会是个大问题,所以为了解决读取处理大文件时性能上的问题,就在原来按行读取文件的基础上增加了多线程的...
  • java IO文件至至txt丢失数据

    千次阅读 2014-10-15 09:13:52
    用bufferedwriter写文件时需要追加按行写时应在每个write方法后用上 writer.new
  • 我需要检查文件是否存在.可以通过File#exists()方法完成.但是这种存在检查是区分大小的.我的意思是,如果我在代码中有一个文件名some_image_file.jpg,但实际上如果文件...每包含文件和文件名的元数据.在某些情况...
  • Java中文本文件的读取(按行读取)

    万次阅读 多人点赞 2018-04-29 18:14:44
    在之前的学习过程中,经常会遇到将文本文件中的数据读取到数组或其他数据结构中。每次遇到,总是在网上搜索代码解决,解决之后并没有总结复习,因此在下一次遇到同样的问题时,又重复之前的过程。这样周而复始,并...

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 331
精华内容 132
关键字:

java按行写数据

java 订阅