zoukankan      html  css  js  c++  java
  • 更新一个文件夹下所有的文件

            当需要更换一个文件夹下所有的文件中某些相同字段时,可以写一个简单的Java程序来解决。


            首先找到要做更新的文件所在的文件夹路径,然后再将文件夹下所有文件的名字存下来,然后遍历整个文件夹,用文件夹名和文件名组合成文件的路径,然后根据路径打开文件就可以进行处理了。这里是用BufferReader,每次读一行进行替换,然后存到StringBuilder(这里不考虑线程,StringBuilder比StringBuffer快)中拼接完成转换,最后保存文件,存回原来的位置即可。


    注意:这里的代码没有对文件夹内部是否还有其他文件夹进行判断,如果有需要可以自己加


    具体代码如下:

    package test;
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.InputStreamReader;
    import java.io.PrintWriter;
    
    
    public class MyTest {
    
    	public static void main(String[] args) throws Exception{
    		//文件所在的文件夹
    		File filePath = new File("E:\file");
    		//文件夹内所有文件的名字
    		String [] fileName = filePath.list();
    		//计数器
    		int count = 0;
    		if(!filePath.exists()){
    			System.out.println("文件夹不存在");
    		}
    		for(String name : fileName){
    			//某一个文件的路径
    			File file = new File(filePath +"\"+ name);
    			//获取到文本
    			InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "UTF-8");
    			BufferedReader in = new BufferedReader(isr);
    			//暂存某一行文本
    			String str = null;
    			//暂存处理过的文本
    			StringBuilder string = new StringBuilder();
    			//开始处理
    			while((str = in.readLine()) != null){
    				//对当前这一行进行某些字段的替换
    				string.append(str.replaceAll("需要被替换的字段", "替换后的字段")+"
    ");
    			}
    			//关闭输入文件
    			in.close();
    			//要输出转换后文件的路径
    			PrintWriter output = new PrintWriter(filePath +"\"+ name);
    			//输出到指定文件
    			output.println(string.toString());
    			//关闭输出文件
    			output.close();
    			
    			System.out.println(name + ":success");
    			count++;
    		}
    		System.out.println("共计转换:"+count+"个文件");
    		
    	}
    
    }
    
    
  • 相关阅读:
    空气墙的制作,标签的添加
    子弹朝向问题的解决,移动方法的编写
    子弹的朝向问题
    坦克的攻击方法
    移动优先级的添加,2D渲染层级问题
    碰撞器的添加,解决抖动问题
    控制图片的移动切换
    控制玩家的移动
    游戏中预制体的制作,2D动画的制作
    场景搭建,素材的处理
  • 原文地址:https://www.cnblogs.com/chenghao1/p/7577467.html
Copyright © 2011-2022 走看看