svn日志获取
svn checkout工程, svn log -r {开始日期}:{结束日期} -v > 日志保存路径
svn log -r {2017-2-6}:{2017-2-15} -v > d:/svn.log
主方法
package ajava;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
public class TestReadFile {
static String[] apps="工程A,工程B,工程C".split(",");
public static StringBuffer readFileByLines(String fileName, String uname) {
StringBuffer buf = new StringBuffer();
File file = new File(fileName);
BufferedReader reader = null;
try {
// System.out.println("以行为单位读取文件内容,一次读一整行:");
InputStreamReader read = new InputStreamReader(new FileInputStream(
file), "gbk");
reader = new BufferedReader(read);
String tempString = null;
int line = 1;
// 一次读入一行,直到读入null为文件结束
boolean f = false;
boolean me = false;
String con = "";
while ((tempString = reader.readLine()) != null) {
if ("------------------------------------------------------------------------"
.equals(tempString)) {
f = true;
me = false;
con = "";
} else {
if (tempString.indexOf(uname) > -1) {
me = true;
}
if (me) {
con = tempString + "";
}
}
// System.out.println(con);
buf.append(con);
// 显示行号
System.out.println("line " + line + ": finished");
line++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
return buf;
}
public static StringBuffer readFileByKey(String fileName, String key) {
StringBuffer buf = new StringBuffer();
File file = new File(fileName);
BufferedReader reader = null;
try {
InputStreamReader read = new InputStreamReader(new FileInputStream(
file), "gbk");
reader = new BufferedReader(read);
String tempString = null;
int line = 1;
while ((tempString = reader.readLine()) != null) {
if (tempString.indexOf(key) > -1) {
buf.append(tempString + "
");
}
System.out.println("line " + line + ": finished");
line++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e1) {
}
}
}
return buf;
}
public static void writeFile(String fileName, String str) {
long start = System.currentTimeMillis();
try {
FileWriter fileWriter = new FileWriter(fileName);
fileWriter.write(str);
fileWriter.flush();
fileWriter.close();
long end = System.currentTimeMillis();
System.out.println("写文件耗时:" + (end - start) + " ms");
} catch (Exception e) {
e.printStackTrace();
}
}
public static void step1(){
long start = System.currentTimeMillis();
String str = readFileByLines(
"C:/Users/Administrator/Desktop/test/logs.txt", "开发人员svn账户")
.toString();
System.out.println(str);
writeFile("C:/Users/Administrator/Desktop/test/mylog.txt",str);
long end = System.currentTimeMillis();
System.out.println("耗时:" + (end - start) + " ms");
}
public static void step2(){
long start = System.currentTimeMillis();
for (int i = 0; i < apps.length; i++) { string key="apps[i];" string str =" readFileByKey(" "c:="" users="" administrator="" desktop="" test="" mylog.txt",key)="" .tostring(); ="" key="key.replace("/", "");" writefile("c:="" "+key+".txt",str);="" }="" long end =" System.currentTimeMillis();" system.out.println("耗时:" + (end - start) + " ms");="" public static void main(string[] args) {="" step2();="" <="" pre=""> apps.length; i++) {>