2
votes


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);
}
}
3

3 Answers

6
votes

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();
        }

      }
    }
0
votes

how about adding a new line character "\n" to each row ?

0
votes

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