简体   繁体   中英

How to write content on a text file using java?


i am having a program in java.which system.out some strings,i need to save each of them in a text file
it is showing in a format
ruo1 row2 row3
i want it in
row1
row2
row3
how can i do that in java?

import java.util.Arrays;
import java.io.*;
public class BruteForce {
 public static FileOutputStream Output;
    public static PrintStream file;
    public static String line;

public static void main(String[] args) {
String password = "javabeanc";
char[] charset = "abcdefghijklmnopqrstuvwxyz".toCharArray();
BruteForce bf = new BruteForce(charset, 8);

String attempt = bf.toString();
while (true) {
    FileWriter writer;
    try {
      writer = new FileWriter("test.txt");

        writer.write(attempt+"\n");

      writer.close();
    } catch (IOException e) {
      e.printStackTrace();
    }


attempt = bf.toString();
System.out.println("Tried: " + attempt);

bf.increment();
}
}


private char[] cs; // Character Set
private char[] cg; // Current Guess

public BruteForce(char[] characterSet, int guessLength) {
cs = characterSet;
cg = new char[guessLength];
Arrays.fill(cg, cs[0]);
}

public void increment() {
int index = cg.length - 1;
while(index >= 0) {
if (cg[index] == cs[cs.length-1]) {
if (index == 0) {
cg = new char[cg.length+1];
Arrays.fill(cg, cs[0]);
break;
} else {
cg[index] = cs[0];
index--;
}
} else {
cg[index] = cs[Arrays.binarySearch(cs, cg[index]) + 1];
break;
}
}
}

public String toString() {
return String.valueOf(cg);
}
}

Very quick code. I apologize if there are compile errors.

 import java.io.FileWriter;
  import java.io.IOException;  
  public class TestClass {
      public static String newLine = System.getProperty("line.separator");
      public static void main(String[] a) {
        FileWriter writer;
        try {
          writer = new FileWriter("test.txt");
          for(int i=0;i<3;i++){
            writer.write(row+i+newLine);
          }
          writer.close();
        } catch (IOException e) {
          e.printStackTrace();
        }

      }
    }

给每一行添加一个换行符“\n”怎么样?

u can use PrintWriter pw;
pw.println(row+i) in above instead of hard coding newLine

Using JDK 11 one can write:

public void writeToFile() {
    String content = "Line 1\nLine 2";
    Path path = Paths.get("./resources/sample-new.txt");
    Files.writeString(path, content);
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM