Utf8BomRemover

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package com.company;

import java.io.File;
import java.io.IOException;
import java.util.Collection;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import org.apache.commons.io.DirectoryWalker;
import org.apache.commons.io.FileUtils;

public class Utf8BomRemover extends DirectoryWalker {
  private String extension = null;
  private JFrame jFrame;
  private int count;

  public Utf8BomRemover(JFrame controller, String extension) {
    this.extension = extension;
    this.jFrame = this.jFrame;
    this.count = 0;
  }

  public void start(File rootDir) throws IOException {
    this.walk(rootDir, (Collection)null);
  }

  protected void handleFile(File file, int depth, Collection results) throws IOException {
    this.remove(file);
    ++this.count;
  }

  protected void handleEnd(Collection results) throws IOException {
    JOptionPane.showMessageDialog(this.jFrame, "你成功修改" + this.count + "个.java编码的BOM文件");
  }

  private void remove(File file) throws IOException {
    byte[] bs = FileUtils.readFileToByteArray(file);
    if (bs[0] == -17 && bs[1] == -69 && bs[2] == -65) {
      byte[] nbs = new byte[bs.length - 3];
      System.arraycopy(bs, 3, nbs, 0, nbs.length);
      FileUtils.writeByteArrayToFile(file, nbs);
    }

  }
}
if(contents.length > 2 && (contents[0]&0xFF) == 0xEF && (contents[1] & 0xFF) == 0xBB && (contents[2] & 0xFF) == 0xBF) {  
    byte[] trim = new byte[contents.length - 3];  
    System.arraycopy(contents, 3, trim, 0, trim.length);    
    return trim;  
}

 

转载于:https://www.cnblogs.com/tonggc1668/p/11344837.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值