簡體   English   中英

如何使用java在文本文件中寫入內容?

[英]How to write content on a text file using java?


我在 java.which system.out 中有一個程序,一些字符串,我需要將它們中的每一個保存在一個文本文件中
它以一種格式顯示
ruo1 行 2 行 3
我想要它
第 1 行
第 2 行
第 3 行
我怎么能在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);
}
}

非常快速的代碼。 如果有編譯錯誤,我深表歉意。

 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”怎么樣?

你可以使用 PrintWriter pw;
上面的 pw.println(row+i) 而不是硬編碼 newLine

使用 JDK 11 可以編寫:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM