java编程IO操作必不可少的,很久不玩IO,回顾一下,写了几个小程序,记录一下,方便查阅和学习。

1.给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印。

package com.io.test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException; import org.apache.jasper.tagplugins.jstl.core.ForEach; public class SortAndPrint {
//给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印。 public static void main(String[] args) throws IOException {
int[] arr={3,4,6,78,90,1}; //新建一个文件
File file=new File("d:\\sort.txt");
FileWriter fw=new FileWriter(file);
String string="";
for (int i = 0; i < arr.length; i++) {
int num = arr[i];
string+=num+",";
}
System.out.println(string); try {
fw.write(string);
fw.flush();
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//从文件中读取
FileReader fr=new FileReader(file);
BufferedReader bfr=new BufferedReader(fr);
StringBuilder sb=new StringBuilder(); int ch = 0;
String str=null;
while((str=bfr.readLine())!=null )
{
sb.append(str);
}
fr.close();
bfr.close();
String[] split = sb.toString().split(",");
int[] ints = StringToInt(split);
//进行排序
int[] sort2 = sort(ints);
for (int i = sort2.length-1; i>0; i--) {
System.out.println(sort2[i]);
}
}
//将字符串数组转换为整数数组
public static int[] StringToInt(String[] strs){
int num=strs.length;
int[] arrs=new int[num];
for (int i = 0; i < strs.length; i++) {
arrs[i]=Integer.parseInt(strs[i]);
}
return arrs;
}
//冒泡排序
public static int[] sort(int[] arr){
int num=arr.length;
int temp=0;
for (int i = num-1; i>0; i--) {
for(int j=0;j<i;j++){
//冒泡法
if(arr[j]>arr[i]){
//互换位置
temp=arr[j];
arr[j]=arr[i];
arr[i]=temp;
}
}
}
return arr;
} }

2.遍历一个 文件夹中的所有文件。

package com.io.test;

import java.io.File;

public class FileBianLi {
//遍历 文件夹中的所有文件
public static void main(String[] args) {
//得到要遍历的目录文件夹
File file=new File("e:\\");
showAllFile(file);
} public static void showAllFile(File file){
//获取所有子文件
File[] files = file.listFiles();
//判断文件类型
if(!file.isDirectory()){
System.out.println("文件:"+file.getAbsolutePath());
}else{
if(files==null||files.length==0){
System.out.println("空目录:"+file.getAbsolutePath());
}else{
//遍历files
System.out.println("目录:"+file.getAbsolutePath());
for (File f : files) {
showAllFile(f);
}
}
} } }

java编程IO简单回顾和学习的更多相关文章

  1. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十三)之Strings

    Immutable Strings Objects of the String class are immutable. If you examine the JDK documentation fo ...

  2. java小知识点简单回顾

    1.java的数据类型分为两种:简单类型和引用类型(数组.类以及接口).注意,java没有指针的说法,只有引用.简单类型的变量被声明时,存储空间也同时被分配:而引用类型声明变量(对象)时,仅仅为其分配 ...

  3. java的Io流机制的学习

    IO流机制 File类的使用 File类的构造方法 File(URI uri) File(String pathname) File(File parent, String child) File(S ...

  4. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(十二)之Error Handling with Exceptions

    The ideal time to catch an error is at compile time, before you even try to run the program. However ...

  5. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(四)之Operators

    At the lowest level, data in Java is manipulated using operators Using Java Operators An operator ta ...

  6. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(三)之Everything Is an Object

    ---恢复内容开始--- Both C++ and Java are hybird languages. A hybird language allow multiple programming st ...

  7. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(二)之Introduction to Objects

    The genesis of the computer revolution was a machine. The genesis of out programming languages thus ...

  8. Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(一)之Introduction

    Learn Java I found out that I and other speakers tended to give the typical audience too many topics ...

  9. java 的 IO简单理解

    首先要先理解什么是 stream ? stream代表的是任何有能力产出数据的数据源,或是任何有能力接收数据的接收源. 一.不同导向的 stream 1)以字节为单位从 stream 中读取或往 st ...

随机推荐

  1. 干净的ssm框架项目

    其中数据库只有如下表与字段 访问效果: 项目下载: 干净的ssm框架项目.rar

  2. JFinal Model判断数据库某条记录的属性字段是否包含空值

    如果做报表,一条记录中有空值,使用FreeMarker渲染word会报错,并把错误日志输出到Word中.所以需要之前判断下当前记录中属性值是否有空值. package com.huijiasoft.u ...

  3. c#启动windows服务问题总结

    程序以管理员权限运行的原因 在Vista 和 Windows 7 及更新版本的操作系统,增加了 UAC(用户账户控制) 的安全机制,如果 UAC 被打开,用户即使以管理员权限登录,其应用程序默认情况下 ...

  4. mysql mysqld.sock文件丢失问题

    修改mysql 编码为utf8时 在/etc/mysql/目录下 在 [client] 添加 default-character-set=utf8 [mysqld]添加 default-charact ...

  5. iis日志分析软件及大文本切割软件下载

    在网上找了好几个日志分析软件,觉得这个是最简单.实用的,至少对我来说. 但这个软件有个缺点,就是日志比较大时,分析详细的会溢出,需要用到文本切割工具. 软件下载: iis日志分析软件 大文本切割软件 ...

  6. Ant.OutputIsUnreadableCode

    Ant在Mac OS X终端中的输出乱码的问题 1. 问题: 在用Ant脚本进行构建Android App时,在编译失败时,Ant 输出有乱码. 2. 环境: Mac OS X, 简体中文版.在Ter ...

  7. NC 6系分配组织方法

    分配客户的方法 String[] customer = { cuVO.getPk_customer() }; ICustAssignService cs = NCLocator.getInstance ...

  8. mysql错误日志

    cat /etc/my.cnf

  9. Eclipse快捷键系列

    查看Eclipse自定义的快捷键或者自己定义快捷键的方式 Window --> preference --> general --> Keys 在光标所在行之后插入一行,省去了将光标 ...

  10. Python之路(第十二篇)程序解耦、模块介绍\导入\安装、包

    一.程序解耦 解耦总的一句话来说,减少依赖,抽象业务和逻辑,让各个功能实现独立. 直观理解“解耦”,就是我可以替换某个模块,对原来系统的功能不造成影响.是两个东西原来互相影响,现在让他们独立发展:核心 ...