Java IO
来源:互联网 发布:唐山it培训 编辑:程序博客网 时间:2024/06/05 04:44
1.创建文件“word”,向文件写入数据“aaaabbcccccccc冯凤冯凤居然找到了共同点。。。”,创建一个目录”D:/worddir”,复制文件到该目录,然后将其删除,移动文件到该目录,算出该文件中的数据中的字母以及汉字出现的次数,在控制台显示出来。
package com.hhl.io;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.HashMap;public class SumDay { public static void main(String[] args) throws IOException { //创建文件 File wordFile = new File("D:/word"); wordFile.createNewFile(); //写入数据 FileWriter wordFos = new FileWriter(wordFile); wordFos.write("aaaabbcccccccc冯凤冯凤居然找到了共同点。。。"); wordFos.close(); //创建一个目录 File dir = new File("D:/worddir"); dir.mkdirs(); //复制文件到指定目录 File fileTo = new File("D:/worddir/word"); FileReader fis = new FileReader(wordFile); FileWriter fos = new FileWriter(fileTo); int len = 0; while ((len=fis.read())!=-1) { char c = (char)len; System.out.println(c); fos.write(c+""); } fis.close(); fos.close(); //删除文件 fileTo.delete(); //移动文件到指定目录 File fileTo2 = new File("D:/worddir/word"); wordFile.renameTo(fileTo2); //算出每个字母出现的次数 int count = 0; HashMap<Character, Integer> hashMap = new HashMap<Character, Integer>(); FileReader fr = new FileReader(fileTo2); while ((len=fr.read())!=-1) { char c = (char)len; try { count = hashMap.get(c); } catch (Exception e) { // TODO: handle exception } hashMap.put(c, count+1); count = 0; } fr.close(); System.out.println(hashMap); }}
2.遍历目录下的所有文件,采用递归方式,并找出“.java”结尾的文件
package com.hhl.io;import java.io.File;import java.util.ArrayList;import java.util.List;public class SumBIan { public static void bianLi(File dir,List<File> files){ File[] fileArr = dir.listFiles(); if (fileArr==null) { return; } for(File file:fileArr){ files.add(file); bianLi(file, files); } } public static List<File> getAll(String d){ File file = new File(d); List<File> files = new ArrayList<File>(); if (file.exists()&&file.isDirectory()) { bianLi(file, files); } return files; } public static void main(String[] args) { List<File> files = getAll("D:/javatest");//输入你想输入的目录 for(File file :files){ if (file.getName().toString().endsWith(".java")) { System.out.println(file.getName()); } } }}
其中有一段代码:
其中,return返回到哪里,我设置了断点进行追踪
当执行到return时,下一步跳出的是下图所示的bianli方法
而不是
接着继续执行循环,如图:
3.创建文件时注意例如创建“HelloWorld.txt”的记事本文件时,我们在电脑中有可能这样创建
想用这个文件时需要这样写:
File file = new File("D:/HelloWorld.txt.txt");
需要有两个txt,因为“HelloWorld.txt”本就是它的名字,这点有可能忘记了,需要注意。
阅读全文
0 0
- 【Java-IO】IO入门
- Java IO:IO框架
- 【IO】java IO 总结
- java IO
- IO.java
- JAVA IO
- JAVA IO
- java IO
- java io
- JAVA IO
- java IO
- java IO
- java io
- java io
- java io
- java IO
- java IO
- java io
- 两种升序排序的方法
- CSS3实现文字3D效果
- Unity中Input 方法总结
- Python3 [爬虫实战] Redis+Flask 动态维护cookies池(上)
- LeetCode Problem 424: Longest-Repeating-Character-Replacement
- Java IO
- UVa 536 Tree Recovery
- BZOJ 4791: [CERC2016]Free Figurines 模拟
- 职场10大潜规则
- 如何解决跨域请求的问题
- ADB 过滤activity 关键字
- CODEVS--1201 最小数和最大数
- 浅谈模板类vector和array
- c++ 遍历文件夹函数