我创建了一些方法来逐字编辑文件,但现在需要使用printStream创建一个带有更新文本的新文件。我已经对printStream做了一些研究,但仍然不太了解如何做到这一点。这是我的代码:
public static void main(String[] args) throws FileNotFoundException {
File jaws = new File("JawsScript.txt");
Scanner in = new Scanner(jaws);
while (in.hasNext()) {
String word = in.next();
PrintStream out =
new PrintStream(new File("stuff.txt"));
System.out.println(convert(word));
}
方法"转换"是一种调用所有其他方法并将所有更改应用于文本中的单个字符串的方法:
//Applies all of the methods to the string
public static String convert(String s) {
String result = "";
result = rYah(s);
result = rWah(result);
result = transform(result);
result = apend(result);
result = replace(result);
return result;
}
我基本上只是想知道如何使用printStream来应用"转换"到文本并将更新的文本打印到新文件。
答案 0 :(得分:1)
首先,不要在每次循环迭代中重新初始化PrintStream对象。
要写入文件,只需调用PrintStream的println
方法即可。您可能没有意识到这一点,但是当您打印到控制台时,这正是您正在做的事情。 System.out
是一个PrintStream对象。
PrintStream out =
new PrintStream(new File("stuff.txt"));
while (in.hasNext()) {
String word = in.next();
out.println(convert(word));
}
答案 1 :(得分:0)
import java.io.PrintStream;
public class Main2{
public static void main(String[]args){
String str = " The Big House is";
PrintStream ps = new PrintStream(System.out);
ps.printf("My name is : %s White", str);
ps.flush();
ps.close();
}
}
输出为: 大房子是白色的
使用PrintStream的另一种方法是...
CharSequence cq = "The Big House is White";
PrintStream ps = new PrintStream(System.out);
ps.append(cq);
ps.flush();
ps.close();
}
}