【java 文件读写操作】 生成随机数,写入txt,然后从txt中读出

1.把生成的随机数写入到文件中

 1 public static void WriterFun(){
 2         //获得路径
 3         String filepath = System.getProperty("user.dir");
 4         filepath += "\\file.txt";
 5
 6         File file = new File(filepath);
 7         if(!file.exists()){
 8             try {
 9                 file.createNewFile();
10             } catch (IOException e) {
11                 e.printStackTrace();
12             }
13         }
14         try {
15             BufferedWriter bw = new BufferedWriter(new FileWriter(file));
16
17             Random random = new Random();
18             for(int i=0;i<10000;i++){
19                 int nums = Math.round(random.nextFloat()*1000.0f);
20                 //将int 转化为 String类型
21                 bw.write(Integer.toString(nums));
22                 bw.newLine();
23             }
24             bw.close();
25
26         } catch (IOException e) {
27             e.printStackTrace();
28         }
29     }

读取文本数据

 1 public static void fun1Reader(){
 2
 3         String filepath = System.getProperty("user.dir");
 4         filepath += "\\123.txt";
 5
 6         File file = new File(filepath);
 7         BufferedReader br;
 8         try {
 9             br = new BufferedReader(new FileReader(file));
10
11             String tmp;
12             while((tmp = br.readLine()) != null){
13                 System.out.println(tmp);
14             }
15         } catch (Exception e) {
16             // TODO Auto-generated catch block
17             e.printStackTrace();
18         }
19     }

贴出全部代码

  1.生成10000整形的随机数存入文本file.txt中

  2.从file.txt中读取数据并且放入Arraylist中

  3.排序 选择排序方法进行排序

  4.写入到files.txt文件中

  1 package com.SortDao;
  2
  3 import java.io.BufferedReader;
  4 import java.io.BufferedWriter;
  5 import java.io.File;
  6 import java.io.FileNotFoundException;
  7 import java.io.FileReader;
  8 import java.io.FileWriter;
  9 import java.io.IOException;
 10 import java.util.ArrayList;
 11 import java.util.Random;
 12
 13
 14 public class WriteAndReader {
 15
 16
 17     public static void main(String[] args) {
 18         // TODO Auto-generated method stub
 19         WriterFun();
 20
 21         // 关于为什么是Integer 不是int 大家自己网上查找一下
 22         ArrayList<Integer> arrayList =  ReaderFun();
 23         sorts(arrayList);
 24         WriterFunc(arrayList);
 25         arrayList.clear();
 26     }
 27
 28     //直接写入生成的随机数
 29     public static void WriterFun(){
 30         //获得路径
 31         String filepath = System.getProperty("user.dir");
 32         filepath += "\\file.txt";
 33
 34         File file = new File(filepath);
 35         if(!file.exists()){
 36             try {
 37                 file.createNewFile();
 38             } catch (IOException e) {
 39                 e.printStackTrace();
 40             }
 41         }
 42         try {
 43             BufferedWriter bw = new BufferedWriter(new FileWriter(file));
 44
 45             Random random = new Random();
 46             for(int i=0;i<10000;i++){
 47                 int nums = Math.round(random.nextFloat()*10000.0f);
 48                 //将int 转化为 String类型
 49                 bw.write(Integer.toString(nums));
 50                 bw.newLine();
 51             }
 52             bw.close();
 53
 54         } catch (IOException e) {
 55             e.printStackTrace();
 56         }
 57     }
 58
 59     // 读入写入file.txt中的随机数
 60     public static ArrayList<Integer> ReaderFun(){
 61         String filepath = System.getProperty("user.dir");
 62         filepath += "\\file.txt";
 63         File file = new File(filepath);
 64         ArrayList<Integer> arrayList  = new ArrayList<Integer>();
 65         if(file.exists()){
 66             try {
 67                 BufferedReader br = new BufferedReader(new FileReader(file));
 68                 String tmp;
 69                 while((tmp = br.readLine()) != null){
 70                     arrayList.add(Integer.valueOf(tmp));
 71
 72                 }
 73                 br.close();
 74             } catch (Exception e) {
 75                 e.printStackTrace();
 76             }
 77
 78         }else{
 79             System.out.println("文件不存在");
 80         }
 81         return arrayList;
 82     }
 83
 84     // 进行排序(应该是选择排序)
 85     public static void sorts(ArrayList< Integer> arr){
 86         for(int i = 0;i < arr.size();i++){
 87             Integer min = arr.get(i);
 88             int position = i;
 89             for(int j=i;j<arr.size();j++){
 90                 if(min>arr.get(j)){
 91                     min=arr.get(j);
 92                     position = j;
 93                 }
 94             }
 95             arr.set(position, arr.get(i));
 96             arr.set(i,min);
 97         }
 98     }
 99
100
101     public static void WriterFunc(ArrayList<Integer> arr ){
102         String filepath = System.getProperty("user.dir");
103         filepath += "\\files.txt";
104         File file = new File(filepath);
105         if(!file.exists()){
106             try {
107                 file.createNewFile();
108             } catch (IOException e) {
109                 e.printStackTrace();
110             }
111         }
112         try {
113             BufferedWriter bw = new BufferedWriter(new FileWriter(file));
114
115             bw.write("After Sorted");
116             bw.newLine();
117
118             for(int i=0;i<arr.size();i++){
119                 Integer num = arr.get(i);
120                 bw.write(Integer.toString(num));
121                 bw.newLine();
122             }
123
124             bw.close();
125
126         } catch (IOException e) {
127             e.printStackTrace();
128         }
129     }
130 }
时间: 2024-10-10 01:33:32

【java 文件读写操作】 生成随机数,写入txt,然后从txt中读出的相关文章

java文件读写操作类

借鉴了项目以前的文件写入功能,实现了对文件读写操作的封装 仅仅需要在读写方法传入路径即可(可以是绝对或相对路径) 以后使用时,可以在此基础上改进,比如: 写操作: 1,对java GUI中文本框中的内容进行捕获,放在txt文本文档中 2,对各种类型数据都以字符串的形式逐行写入 3,对全局数组的内容进行写入 读操作: 获取文件行数 对逐行字符串型数据进行类型转换,放入二维数组中 为后面算法处理提供入口,但是要小心的是:不可以将行数用全局变量做计数器,否则每次读入是全局变量累加出错,应重新开始读取

java文件读写操作

Java IO系统里读写文件使用Reader和Writer两个抽象类,Reader中read()和close()方法都是抽象方法.Writer中 write(),flush()和close()方法为抽象方法.子类应该分别实现他们. Java IO已经为我们提供了三个方便的Reader的实现类,FileReader,InputStreamReader和BufferedReader.其中最重要的类是InputStreamReader, 它是字节转换为字符的桥梁.你可以在构造器重指定编码的方式,如果不

Java文件读写操作指定编码方式防乱码

读文件:BufferedReader 从字符输入流中读取文本,缓冲各个字符,从而提供字符.数组和行的高效读取. 可以指定缓冲区的大小,或者可使用默认的大小.大多数情况下,默认值就足够大了. 通常,Reader 所作的每个读取请求都会导致对基础字符或字节流进行相应的读取请求.因此,建议用 BufferedReader 包装所有其 read() 操作可能开销很高的 Reader(如 FileReader 和 InputStreamReader).例如, BufferedReader in   = n

Java文件读写操作具体代码实现

可以直接下载源文件使用:http://download.csdn.net/detail/zhanghao_hulk/8638541 package test; import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.File

java文件读写操作指定编码格式

读文件: BufferedReader 从字符输入流中读取文本,缓冲各个字符,从而提供字符.数组和行的高效读取. 可以指定缓冲区的大小,或者可使用默认的大小.大多数情况下,默认值就足够大了. 通常,Reader 所作的每个读取请求都会导致对基础字符或字节流进行相应的读取请求.因此,建议用 BufferedReader 包装所有其 read() 操作可能开销很高的 Reader(如 FileReader 和 InputStreamReader).例如, BufferedReader in   =

java文件读写操作大全

转自:http://www.cnblogs.com/zhuocheng/archive/2011/12/12/2285290.html ———————————————————————————————————————————— 一.获得控制台用户输入的信息     public String getInputMessage() throws IOException...{         System.out.println("请输入您的命令∶");         byte buffe

C语言文件读写操作,写入数据到文件

很早写的在linux系统下的文件读写操作,写入数据到文件,很时候初学者学习 #include <stdio.h> int writeInfoToFile(const char *strFile) { int age, i; char name[10]; FILE *fp; fp = fopen(strFile, "w"); // 只读的方式打开文件 if(fp == NULL) { perror("fopen"); // 文件打开失败,打印错误信息 re

Android数据存储——文件读写操作(File)

Android文件读写操作 一.文件的基本操作 Android中可以在设备本身的存储设备或外接的存储设备中创建用于保存数据的文件.在默认状态下,文件是不能在不同程序间共享的. 当用户卸载您的应用程序时,这些文件删除. 文件存储数据可以通过openFileOutput方法打开一个文件(如果这个)文件不存在就自动创建这个文件),通过load方法来获取文件中的 数据,通过deleteFile方法删除一个指定的文件. 1,常用方法介绍: File是通过FileInputStream和FileOutput

Java 文件写操作

在进行文件写操作的时候,有两种操作方方式.一个是连续写,一个是覆盖式写. 代码如下: import java.io.BufferedWriter; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; // text:要写入的内容:isAppend:写入方式,true为连续写,false为覆盖式写入. public void write(String text