import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.RandomAccessFile;
public class Test {
public static void readFileByLines() throws Exception{
//项目的绝对路径,也就是想修改的文件路径
String filePath = "D:\\develop\\workspace\\test\\src\\main\\java\\com";
File f = new File(filePath);
String content = "/*\n"+
"* @(#)"+f.getName()+"\n"+
"*\n"+
"* Copyright ***版权信息***.\n"+
"*/\n";
fileTree(f,content);
}
/**
* 取出所有的文件及文件夹
* @param f 文件夹对象
* @throws Exception
*/
public static void fileTree(File f,String content) throws Exception{
File [] t = f.listFiles();
for (int i = 0; i < t.length; i++) {
if(t[i].isDirectory()){
fileTree(t[i],content);
}else{
insert(t[i],content);
}
}
}
/*public static void main(String[] args) {
try {
readFileByLines();
} catch (Exception e) {
e.printStackTrace();
}
}*/
/**
* 开始插入内容
* @param f 文件对象
* @throws IOException
*/
public static void insert(File f,String content) throws IOException{
File temp = File.createTempFile("temp", null);
temp.deleteOnExit();
RandomAccessFile raf = new RandomAccessFile(f, "rw");
FileOutputStream tempOut = new FileOutputStream(temp);
FileInputStream tempInput = new FileInputStream(temp);
raf.seek(0);
byte[] buf = new byte[64];
int hasRead = 0;
while ((hasRead = raf.read(buf))>0) {
tempOut.write(buf, 0, hasRead);
}
raf.seek(0);
raf.write(content.getBytes());
while ((hasRead = tempInput.read(buf))>0) {
raf.write(buf,0,hasRead);
}
raf.close();
tempOut.close();
tempInput.close();
}
}
【Java工具】在代码头部加版权
原创
©著作权归作者所有:来自51CTO博客作者fyq891014的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
哪款 Java 代码审计工具最好用
java 代码审计工具分析对比。
CodeQL Java 企业级 -
java 版权编码 代码版权保护
目前代码保护的方法主要有五种: 强名称签名• 代码混淆• 代码隐
java 版权编码 代码混淆 字符串 强名称