java - 写入.txt跳过行并留下空格java

标签 java writer reader

   String newPurchaseOrder = dateStr + "#" + customerID + "#" + productCode + "#" + qty;
        try {
            String filename = "PurchaseOrderDataFile.txt";
            FileWriter fw = new FileWriter(filename, true); //the true will append the new data
            BufferedWriter bw = new BufferedWriter(fw);
            FileReader fr = new FileReader("PurchaseOrderDataFile.txt");

            bw.write("\n" + newPurchaseOrder);
            bw.close();
        } catch (IOException ioe) {
            System.err.println("IOException: " + ioe.getMessage());
        }

尝试阻止其在输入.txt文件时跳行

08/12/13#PMI-1256#DT/9489#8
16/12/13#ENE-5789#PV/5732#25
27/12/13#PEA-4567#PV/5732#3@
09/01/14#PEA-4567#DT/9489#1
16/01/14#EMI-6329#PV/5732#8


16/07/13#ESE-5577#ZR/7413#6

输入会跳过如上所述的行

最佳答案

您所说的“跳行”是什么意思? bw.write("\n"+ newPurchaseOrder); 如果您的意思是这样的话,将首先放置一个空行,只需将 "\n" 转移到末尾即可。以下代码工作正常:

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.FileReader;
import java.io.FileWriter;
class myWrite {
    public static void main(String[] args) {
        String dateStr = "test";
        String customerID = "1";
        String productCode = "100";
        String qty = "1000";
  String newPurchaseOrder = dateStr + "#" + customerID + "#" + productCode + "#" + qty;
  String newPurchaseOrder2 = dateStr + "#" + customerID + "#" + productCode + "#" + qty;
        try {
            String filename = "PurchaseOrderDataFile.txt";
            FileWriter fw = new FileWriter(filename, true); //the true will append the new data
            BufferedWriter bw = new BufferedWriter(fw);
            FileReader fr = new FileReader("PurchaseOrderDataFile.txt");

            bw.write(newPurchaseOrder + "\n");
            bw.write(newPurchaseOrder2 + "\n");
            bw.close();
        } catch (IOException ioe) {
            System.err.println("IOException: " + ioe.getMessage());
        }
    }
}

写道:

test#1#100#1000
test#1#100#1000

编辑:使用你告诉我的输出,

08/12/13#PMI-1256#DT/9489#8 
16/12/13#ENE-5789#PV/5732#25 
27/12/13#PEA-4567#PV/5732#3@ 
09/01/14#PEA-4567#DT/9489#1 
16/01/14#EMI-6329#PV/5732#8 

然后我添加了你告诉我的行:

16/07/13#ESE-5577#ZR/7413#6

产生:

08/12/13#PMI-1256#DT/9489#8 
16/12/13#ENE-5789#PV/5732#25 
27/12/13#PEA-4567#PV/5732#3@ 
09/01/14#PEA-4567#DT/9489#1 
16/01/14#EMI-6329#PV/5732#8 
16/07/13#ESE-5577#ZR/7413#6

使用我的代码,它工作正常并且可以满足您的要求..

关于java - 写入.txt跳过行并留下空格java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29086146/

相关文章:

java - 多个方法的全局Int变量方法

java - 何时使用 Java 中的 Writer 子类;常见做法

c# - 有没有用 C# 将 Java 库编译成可包装的东西的例子?

java - Hibernate.Envers 的替代解决方案

java - Eclipse - 当我创建 JUnit 套件时,测试类列表是空的。为什么?

java - 如果不关闭流,为什么文件不会被填充?

java - 写入多个文件时,为 MultiResourceItemWriter 创建的所有文件指定页眉和页脚 -spring batch

exception - 如何处理项目读取器抛出的异常?

Java CSVReader 跳过行以及如何转换 csv

java - Java 10 中的 java.io.Reader transferTo(java.io.Writer) 方法是什么? InputStream有没有类似的方法?