哎哟,不错哦

导航

java修改文件内容

项目使用到了需要将配置文件中指定内容替换为想要更新的内容,特此记下,已被后用

/**
	 * 
	 * @param fileName 要修改的文件名
	 * @param oldstr 要修改的字段
	 * @param newStr 替换的字段
	 */
	public static Boolean updateStartBat(String fileName, String oldstr, String newStr){
		RandomAccessFile raf = null;
		try {
			raf = new RandomAccessFile(PathUtil.appPath +File.separator +"nginx-1.14.2"
					+ File.separator + File.separator+fileName, "rw");
			String line = null;
            long lastPoint = 0; //记住上一次的偏移量
            while ((line = raf.readLine()) != null) {
                final long ponit = raf.getFilePointer();
                if(line.contains(oldstr)){
                	String str=line.replace(oldstr, newStr);
                	raf.seek(lastPoint);
                	raf.writeBytes(str);
                }
                lastPoint = ponit; 
            }
		} catch (FileNotFoundException e) {
			
			e.printStackTrace();
		} catch (IOException e) {
			
			e.printStackTrace();
		} finally {
            try {
                raf.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
		return true;
	}

  

posted on 2019-05-02 22:08  哎哟,不错哦  阅读(4433)  评论(0编辑  收藏  举报