黑马程序员技术交流社区
标题:
打印流这地方,搞了半天也不知道错哪儿了,大家帮我看看
[打印本页]
作者:
何明辉
时间:
2012-9-12 22:38
标题:
打印流这地方,搞了半天也不知道错哪儿了,大家帮我看看
本帖最后由 何明辉 于 2012-9-13 00:08 编辑
import java.io.*;
class WriterDemo
{
public static void main(String[] args)throws IOException
{
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
PrintWriter bm=new PrintWriter((System.out));
System.setOut(new PrintStream("D:\\22222.text"));
String line;
while((line=bf.readLine())!=null)
{
if(line.equals("over"))break;
bm.write(line);
bm.flush();
}
bf.close();
bm.close();
}
}
22222.text中怎么没有记录啊,我在输入的时候;
作者:
覃宏海
时间:
2012-9-12 23:13
本帖最后由 覃宏海 于 2012-9-13 00:33 编辑
import java.io.*;
public class WriterDemo {
public static void main(String[] args)throws IOException
{
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
PrintWriter bm=new PrintWriter("D:\\22222.txt");
// System.setOut(new PrintStream("D:\\22222.txt"));
String line;
while((line=bf.readLine())!=null)
{
if(line.equals("over"))
break;
bm.write(line);
bm.flush();
}
bf.close();
bm.close();
}
}
你把输出结果直接打印在屏幕上了 而不是保存在文件上
作者:
张忠豹
时间:
2012-9-12 23:17
package com.itheima.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.io.PrintWriter;
public class StreamDemo {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
System.setOut(new PrintStream(new File("D:\\22222.txt"))); //参见JDK,重新分配“标准”输出流
PrintWriter bm = new PrintWriter(System.out); //再次使用标准的输出流就改变,就会输出到22222.txt文件中了
String line;
while ((line = bf.readLine()) != null) {
if (line.equals("over"))
break;
bm.write(line);
bm.flush();
bm.append("\n");
}
bf.close();
bm.close();
}
}
楼主可以试试哦!
作者:
李菁
时间:
2012-9-12 23:35
下面是我的代码
import java.io.*;
public class Test {
public static void main(String[] args)throws Exception {
BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in));
System.setOut(new PrintStream(new File("D:\\22222.text")));
PrintWriter out=new PrintWriter(System.out,true);
true代替flush刷新,下面就可以省略flush。
没有标记的方法不能刷新,所以下面是用out.println
String line=null;
while((line=bufr.readLine())!=null)
{
if(line.equals("over"))break;
out.println(line);
可以直接用PrintWriter 的println,这样就不用再添加"\n"了。
}
out.close();
bufr.close();
}
}
作者:
信义明
时间:
2012-9-12 23:56
import java.io.*;
class WriterDemo
{
public static void main(String[] args)throws IOException
{
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
//以下两行代码的顺序调换即可,先设置标准输出流位置,再调用
System.setOut(new PrintStream("D:\\22222.text")); //这种构造方式在API里也有
PrintWriter bm=new PrintWriter((System.out));
String line;
while((line=bf.readLine())!=null)
{
if(line.equals("over"))break;
bm.println(line); //这里使用println就不用手动换行了
bm.flush();
}
bf.close();
bm.close();
}
}
复制代码
希望可以帮助到你
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2