英文:
I can't write on multiple lines in a txt file in java
问题
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;
import java.io.File;
import java.io.IOException;
import java.io.FileWriter;
public class Main {
    public static void main( String args[]) {
         int a = 32;
         int b=12;
         int c=33;
          List<Integer> myList = new ArrayList();
          myList.add(a);
          myList.add(b);
          myList.add(c);
          
          try{
              File myObj = new File("filename.txt");
              if(myObj.createNewFile()){
                  System.out.println("File created " + myObj.getName());
              }
              else
              {
                  System.out.println("File already exists");
              }
          }
          catch (IOException e)
          {
              System.out.println("An error has occurred");
              e.printStackTrace();
          }
         
          
          try {
            FileWriter myWriter = new FileWriter("filename.txt");
            for(int i=1;i<10;i++)
            {
            myWriter.append("This is a new file, nothing sus here."+i + " ");
            }
            myWriter.close();
            System.out.println("Successfully wrote to the file.");
          } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
          }
                
    }
    
}
英文:
So I'm trying to write in a text file, nothing too complicated, but for some reason the new text that i want to add doesn't change lines, it keeps going on the same line, and I can't figure out why. The irrelevant parts are being commented so don't worry about them.
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;
import java.io.File;
import java.io.IOException;
import java.io.FileWriter;
public class Main {
    public static void main( String args[]) {
         int a = 32;
         int b=12;
         int c=33;
          List<Integer> myList = new ArrayList();
          myList.add(a);
          myList.add(b);
          myList.add(c);
         /* for(int s:myList)
          {
              System.out.println(s);
          }
          */
          //Om ar= new Om("Alex",21,185);
          //System.out.println(ar);
          try{
              File myObj = new File("filename.txt");
              if(myObj.createNewFile()){
                  System.out.println("File created " + myObj.getName());
              }
              else
              {
                  System.out.println("File already exists");
              }
          }
          catch (IOException e)
          {
              System.out.println("An error has occurred");
              e.printStackTrace();
          }
         
          
          try {
            FileWriter myWriter = new FileWriter("filename.txt");
            for(int i=1;i<10;i++)
            {
            myWriter.append("This is a new file, nothing sus here."+i + " ");
            }
            myWriter.close();
            System.out.println("Successfully wrote to the file.");
          } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
          }
                
    }
    
}
答案1
得分: 1
- 将你的 
FileWriter包装在一个BufferedWriter中,以提高向文件写入的效率。 - 然后,你可以使用 BufferedWriter 的 
newLine()方法按需要向文件添加换行字符串。newLine()方法会根据你当前的平台写出适当的换行字符串。 
英文:
- Wrap your 
FileWriterin aBufferedWriterto make writing to the file more efficient. - Then you can use the 
newLine()method of the BufferedWriter to add a newline String to the file as you require. ThenewLine()method will write out the appropriate string for your current platform. 
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。


评论