Java 从不同方法写入同一文件
我一直在用Java处理文件。我还知道读写文件的基本知识。下面是我试图编写的代码Java 从不同方法写入同一文件,java,file,Java,File,我一直在用Java处理文件。我还知道读写文件的基本知识。下面是我试图编写的代码 void qlm(String option,String initiate,String ii,String file_path,String source,List destination){ //,String paths,String src){ String [] Ln = {"B","C","D"}; int count =1, counter=1,seq=1; try{
void qlm(String option,String initiate,String ii,String file_path,String source,List destination){ //,String paths,String src){
String [] Ln = {"B","C","D"};
int count =1, counter=1,seq=1;
try{
System.out.println("Here: " +file_path);
PrintWriter pwr = new PrintWriter(new FileWriter(getHandleB()),true);
for(int i=0;i<Ln.length;i++){
pwr.println("Sequence_Number" + "|" + "QLM_Operation" + "|" + "II_D" + "|" + "Val_D" + "|" + "List" + "|" + "Type" + "|" + "Status" + "|" + "Source" + "|" + "Destination");
pwr.println(count + "|" + option + "|" + "DataK" + "|" + "Value" + "|" + Ln + "|" + "Null" + "|" + "Pending" + "|" + source + "|" + Ln[i]);
count++;
}
pwr.close();
void qlm(字符串选项、字符串初始化、字符串ii、字符串文件路径、字符串源、列表目标){//、字符串路径、字符串src){
字符串[]Ln={“B”,“C”,“D”};
整数计数=1,计数器=1,序列=1;
试一试{
System.out.println(“此处:+文件路径);
PrintWriter pwr=new PrintWriter(new FileWriter(getHandleB()),true);
对于(int i=0;i您没有追加到文件。请使用允许追加的FileWriter构造函数,该构造函数的第二个参数为boolean/true
PrintWriter pwr = new PrintWriter(new FileWriter(getHandleB(), true),true);
编辑
分离上面代码中的构造函数调用将有助于您了解发生了什么:
FileWriter fileWriter = new FileWriter(getHandleB(), true);
PrintWriter pwr = new PrintWriter(fileWriter, true);
因此您可以看到,是的,这里使用了两个布尔参数,但它们与不同的构造函数一起使用。您没有向文件追加。请使用允许追加的FileWriter构造函数,该构造函数的第二个参数为boolean/true
PrintWriter pwr = new PrintWriter(new FileWriter(getHandleB(), true),true);
编辑
分离上面代码中的构造函数调用将有助于您了解发生了什么:
FileWriter fileWriter = new FileWriter(getHandleB(), true);
PrintWriter pwr = new PrintWriter(fileWriter, true);
您可以看到,是的,这里使用了两个布尔参数,但是它们与不同的构造函数一起使用。您需要使用withtrue
作为第二个参数
默认情况下,FileWriter
会截断它打开的文件。您需要使用withtrue
作为第二个参数
默认情况下,FileWriter
会截断它打开的文件。你比我快。在发布答案之前搜索链接时会出现这种情况:不管怎样,这个问题应该并且将作为重复项关闭。@hovercraftfullofels我已经使用布尔值/true作为第二个参数。你可以找到上面的代码。我正在尝试写入同一个文件而不从不同的函数中删除。@MohammedIrfan:您的代码有一个布尔值,但不在FileWriter
构造函数中。请再次仔细查看构造函数调用:newFileWriter(getHandleB())这是避免过度使用嵌套代码的一个原因。请考虑在不同的行上调用构造函数,您会更清楚地看到它。@ MohammedIrfan是为<代码> PintWriter < /代码>所做的,但不是针对<代码>文件编写器>代码>,它可能在重复的问题中出现,在这里和我在FI中提供的链接中注意到。rst对此答案发表评论。你比我快。在发布答案之前搜索链接时会出现这种情况:无论如何,此问题应该并且将作为重复项关闭。@HoverCraftFullOfels我已使用布尔值/true作为第二个参数。你可以找到上面的代码。我正在尝试写入同一个文件,而不删除from个不同的函数。@MohammedIrfan:您的代码有一个布尔值,但不在FileWriter
构造函数中。请再次仔细查看构造函数调用:newFileWriter(getHandleB())这是避免过度使用嵌套代码的一个原因。请考虑在不同的行上调用构造函数,您会更清楚地看到它。@ MohammedIrfan是为<代码> PintWriter < /代码>所做的,但不是针对<代码>文件编写器>代码>,它可能在重复的问题中出现,在这里和我在FI中提供的链接中注意到。重新评论这个答案。1+伟人思想相似。1+伟人思想相似。@BheshGurung我确实看到了这一点,但我无法解决我的问题。所以我不得不发布它。谢谢。@MohammedIrfan,然后下次仔细阅读答案并查看代码的差异,以避免发布重复的问题。-1回答问题。我的错。我只是想使用堆栈溢出进行rted:(@BheshGurung我确实看到了这一点,但我无法解决我的问题。因此我不得不发布它。谢谢。@MohammedIrfan,然后下次仔细阅读答案并查看与代码的差异,以避免发布重复的问题。-1为问题。我的错。我刚开始使用堆栈溢出:(