java用重定向方法从文件中读入或写入数据
作者:名字是卡的好
这篇文章主要为大家详细介绍了用重定向方法从文件中读入或写入数据,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
用重定向方法从文件中读入或写入数据
1.问题描述
先产生10000个随机数,每十个一行,放入文件中。(用重定向方法)
用重定向方法,从文件中读入10000个数字,打印出前十名。(不许调用排序方法)
2.程序如下:
2.1 写入
import java.util.Scanner; import java.util.List; import java.util.ArrayList; public class A{ static void to_txt(){ for(int i=1;i<=10000;i++){ System.out.print((int)(Math.random()*10000+1)+" "); if(i%10==0) System.out.println(); } } public static void main(String[] args){ to_txt(); } }
2.2 读出
import java.util.Scanner; import java.util.List; import java.util.ArrayList; public class A{ static void read_txt(int k){//此处参数表示打印前k项 List<Integer> lst = new ArrayList<Integer>(); Scanner scan = new Scanner(System.in); String s = scan.nextLine(); String[] x = s.split(" "); lst.add(Integer.parseInt(x[0])); for(int i=1;i<x.length;i++){ int b = Integer.parseInt(x[i]); if(b<lst.get(lst.size()-1)){ lst.add(b); continue; } for(int j=0;j<lst.size();j++){ if(b>lst.get(j)){ lst.add(j,b); break; } } } for(int i=0;i<k;i++){ System.out.print(lst.get(i)+" "); } } public static void main(String[] args){ read_txt(10); } }
3.运行结果
3.1、从Java文件位置进入控制台,在控制台输入Java文件 > txt文件,就能将运行结果写入指定txt文件(要写入的文件)中。
此时运行结果不在控制台显示,而写入了指定文件中
3.2、在Java文件位置处进入控制台,在控制台输入Java + 文件名 < 指定txt文件(要读的文件)
如下图即为要输出的所读入的数据的前十项。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。