繁体   English   中英

将System.Out.Println写入文本文件

[英]Writing System.Out.Println into text file

我需要将这些System.out.printlns写入文本文件,但是我不知道如何发生,因此我需要高级人员的帮助。

  System.out.println("You have have entered "+EnteredNumbers+ " numbers!");
  System.out.println("You have have entered "+Positive+ " Positive numbers!");
  System.out.println("The Average of the Positive Numebers is "+AveragePositive+ "!");
  System.out.println("You have have entered "+Negative+ " Negative numbers!");
  System.out.println("The Sum of the Negative numbers is "+NegativeSum+ "!");

这是整个代码:

import java.io.*; 

public class Nums { 
  public static void main(String args[]) 
    throws IOException 
  { 
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
    String str;
    int EnteredNumbers = -1;
    int Positive = 0;
    int Negative = 0;
    int NegativeSum = 0;
    int PositiveSum = 0; 
    double AveragePositive = 0;

    System.out.println("Enter '0' to quit."); 
    System.out.println("Enter Numbers: "); 
   try{
    do { 
      EnteredNumbers++;
      str = br.readLine();
      int num = Integer.parseInt(str);
      if (num>0)
      {
        Positive++;
        PositiveSum+=num;
      }
      else if (num<0)
      {
        Negative++;
        NegativeSum+=num;
      }
       } 
    while(!str.equals("0")); 
      AveragePositive = (double)PositiveSum/(double)Positive;  
      System.out.println("You have have entered "+EnteredNumbers+ " numbers!");
      System.out.println("You have have entered "+Positive+ " Positive numbers!");
      System.out.println("The Average of the Positive Numebers is "+AveragePositive+ "!");
      System.out.println("You have have entered "+Negative+ " Negative numbers!");
      System.out.println("The Sum of the Negative numbers is "+NegativeSum+ "!");

      }
    catch (java.lang.NumberFormatException ex)
    {
        System.out.println("Invalid Format!");
    }  
} 
}

我是初学者,很想获得帮助!

System.out是一个PrintStream ,它写入标准输出。 您需要创建一个FileOutputStream并用PrintStream装饰(或使用PrintWriter更好的FileWriter ):

File file = new File("C:/file.txt");
FileWriter fw = new FileWriter(file);
PrintWriter pw = new PrintWriter(fw);
pw.println("Hello World");
pw.close();

另请参阅:

这是2014年。所以这里是java.nio.file。

因此:

final List<String> list = new ArrayList<>();

list.add("first string here");
list.add("other string");
// etc etc

然后:

final Path path = Paths.get("path/to/write/to");

Files.write(path, list, StandardCharsets.UTF_8, StandardOpenOption.CREATE);

而且不要使用File

您可以使用setOut()方法通过System.out.println()进行文件写入; 在每次使用System.out.println()调用setOut()之后,sop方法将打印在文件上或您在setOut()方法中提供的任何方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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