首页 > 解决方案 > 如何在文本文件中写入多个 ArrayList

问题描述

在下面的代码中,我正在尝试创建一个 txt 文件,并且我想在其中添加一些值列表。所以在这里我的方法是如果文件不存在则创建一个新文件并将相应的元素添加到其中。

请看下面,我无法得到我的预期输出,所以你能帮我一些想法吗,这样会很有帮助

   public class MyTest {

    public static void main(String[] args) throws Exception  {
        // TODO Auto-generated method stub
        SftpConn sftp = new SftpConn();
        //sftp.sftpGetConnect();
        List<String> list =  new ArrayList<>();
        list.add("AAAA");
        list.add("BBBB");
        list.add("CCCC");
        sftp.writeIntoText(list);
        List<String> list1 =  new ArrayList<>();
        list1.add("AAAA1111");
        list1.add("BBBB2222");
        list1.add("CCCC2222");
        sftp.writeIntoText(list1);
    }
        
    }




 public class SftpConn
      {
    public void writeIntoText(List<String> result) throws Exception
        {
                    connect();
                    List<String> resultdata= result;
                    System.out.println("Result Updated");
                    channelSftp = (ChannelSftp) session.openChannel("sftp");
                    channelSftp.connect();
                    fileOutStream = channelSftp.put("/home/dasrsoum/RM.txt");
                    PrintWriter writer = new PrintWriter(fileOutStream,true);
                    writer.println("------------------");
                    for (String value : resultdata) {
                        writer.println(value+ System.lineSeparator());
                        System.out.println(value);
                    
                    }
                    
            
            writer.close();
   }

实际输出

 AAAA1111
   BBBB2222
   CCCC2222

例外输出

  AAAA
  BBBB
  CCCC
  AAAA1111
  BBBB2222
  CCCC2222

标签: javafilearraylistiofilereader

解决方案


您的第一个文件被第二次调用函数覆盖


推荐阅读