文件处理2
package com;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import javax.swing.text.DefaultEditorKit.CopyAction;
import org.omg.CORBA.PUBLIC_MEMBER;
public class Mylife2 {
public static void main(String[] args) {
try {
File f = new File("F:\\二学期\\java\\随堂练\\文件\\src\\com\\Mylife.java");
if(!f.exists()){ //如果文件不存在
f.createNewFile();//创建文件
}
/*--------写入数据到文件-------
FileWriter writer = new FileWriter(f,true);//新建文件写对象
writer.write("hzp,20");//写入字符串到文件
writer.flush();//刷新缓冲器
writer.close();//关闭写对象
*/ /*--------读取文件内容-------*/
FileReader reader = new FileReader(f);
char buff[] = new char [2048]; //用来存放数据的字符数组
reader.read(buff);
System.out.println(buff);
/*
* 该文件有多少个字符,除开不显示空白的字符
* 计算所有a出现的次数
* 计算所有new出现的次数
* 判断总共有多少行
* 把所有的TXT替换为TXT2
* */
/*------计算文件中一个字符出现的个数-------*/
String ss = new String(buff);
ss = ss.trim();//把空白内容去掉
System.out.println("总字符数:"+ss.length());
int a_times = 0;
for(int i=0;i<2048;i++){
if(buff[i] == 'a'){
a_times++;
}
}
System.out.println("a出现的次数:"+a_times);
/*------计算文件中一串 字符出现的个数-------*/
int b_times = 0;
for(int j=0;j<2048;j++){
if(buff[j] == 'n'&&buff[j+1] == 'e'&&buff[j+2] == 'w'){
b_times++;
}
}
System.out.println("new出现的次数:"+b_times);
/*------计算文件中共有多少行-------*/
int c_times = 0;
for(int x=0;x<2048;x++){
if(buff[x] == '\n'){
c_times++;
}
}
System.out.println("一共有:"+c_times+"行");
/*-------替换文件中的字符------*/
ss = ss.replace("txt","txt2");
System.out.println(ss);
copy("E:\\Tool","E:\\Tool\\123");
}catch (IOException e) {
e.printStackTrace();
}
System.out.println("程序执行完毕");
//from是要复制的文件路径,to是新文件路径
}
public static void copy(String from,String to){
//读取from文件
//把内容写到to文件中
}
}