关于java的字符串操作
2015-12-19 16:57
459 查看
背景:昨天做了一个工作,将数据库里的某张表的字段取出,其字段为file_name,对比数据库的文件名称和 我本地的一个文件夹下的文件名称,文件夹内的文件没有在数据库中一file_name显示则删除该文件,下面是我写的demo,还附带了一些其他的业务逻辑:
被注释掉的部分是string的一些字符串操作,在readAndDelete方法里有用到delete方法删除文件,
public class DeletePicFromFolder {
public static void main(String[] args) {
long startTime=System.currentTimeMillis();
readAndDelete();
long endTime=System.currentTimeMillis(); //获取结束时间
System.out.println("程序运行时间: "+(endTime-startTime)+"ms");
// String s = "http://fsnrec.com:8080/portal/market/SWT-20138121/SWT-2013812120140119142120111.jpg";
// String s1= s.replaceAll("http://fsnrec.com:8080/portal/", "G:/temp/log/");
// System.out.println(s1);
// String[] ss = s.split("/");
// System.out.println(ss.length);
// for(int i=0;i<ss.length;i++){
// System.out.println(ss[i]);
// }
}
public static void readAndDelete() {
String path = "G:/temp/log";
File file = new File(path);
File[] tempList = file.listFiles();
// System.out.println("该目录下对象个数:" + tempList.length);
String sql = "SELECT tt.FILE_NAME FROM t_test_resource tt INNER JOIN t_test_product_to_resource tp on tp.RESOURCE_ID=tt.RESOURCE_ID ";
Result rs = DBConnection.getSelected(sql);
if (rs != null && rs.getRowCount() > 0) {
for (int i = 0; i < tempList.length; i++) {
System.out.println("長度:" + rs.getRowCount());
for (int j = 0; j < rs.getRowCount(); j++) {
ImgInfo imgInfo = new ImgInfo(rs.getRows()[j]);
System.out.println("文件 名稱:" + imgInfo.getImgName());
if (tempList[i].getName() != imgInfo.getImgName()) {
tempList[i].delete();
}
}
}
}
}
}
被注释掉的部分是string的一些字符串操作,在readAndDelete方法里有用到delete方法删除文件,
public class DeletePicFromFolder {
public static void main(String[] args) {
long startTime=System.currentTimeMillis();
readAndDelete();
long endTime=System.currentTimeMillis(); //获取结束时间
System.out.println("程序运行时间: "+(endTime-startTime)+"ms");
// String s = "http://fsnrec.com:8080/portal/market/SWT-20138121/SWT-2013812120140119142120111.jpg";
// String s1= s.replaceAll("http://fsnrec.com:8080/portal/", "G:/temp/log/");
// System.out.println(s1);
// String[] ss = s.split("/");
// System.out.println(ss.length);
// for(int i=0;i<ss.length;i++){
// System.out.println(ss[i]);
// }
}
public static void readAndDelete() {
String path = "G:/temp/log";
File file = new File(path);
File[] tempList = file.listFiles();
// System.out.println("该目录下对象个数:" + tempList.length);
String sql = "SELECT tt.FILE_NAME FROM t_test_resource tt INNER JOIN t_test_product_to_resource tp on tp.RESOURCE_ID=tt.RESOURCE_ID ";
Result rs = DBConnection.getSelected(sql);
if (rs != null && rs.getRowCount() > 0) {
for (int i = 0; i < tempList.length; i++) {
System.out.println("長度:" + rs.getRowCount());
for (int j = 0; j < rs.getRowCount(); j++) {
ImgInfo imgInfo = new ImgInfo(rs.getRows()[j]);
System.out.println("文件 名稱:" + imgInfo.getImgName());
if (tempList[i].getName() != imgInfo.getImgName()) {
tempList[i].delete();
}
}
}
}
}
}
相关文章推荐
- Caused by: java.lang.ClassNotFoundException: org.springframework.jdbc.support.lob.LobHandler
- Caused by: java.lang.ClassNotFoundException: javax.transaction.TransactionManager
- JavaSe:-javaagent,-agentlib,-agentpath
- Caused by: java.lang.ClassNotFoundException: org.springframework.expression.PropertyAccessor
- Dubbo简单小例子(结合spring)
- java的序列化和反序列化
- 【Java EE 学习 77 下】【数据采集系统第九天】【使用spring实现答案水平分库】【未解决问题:分库查询问题】
- java中的日期处理总结
- java 事件机制
- java swing 通过hibernate连接数据库的客户端登录
- 初学java 认识 public private protected 修饰符
- Struts2加载自定义库注意事项
- Java集合框架简述
- Java应用发布后,需要关注的7个性能指标
- Java中的反射——(1)什么是反射
- java 接口实现简单并能说明问题的例子
- MAC多版本JDK
- eclipse中直接查看jar文件源码
- Java编程学习
- JAVA 关键字小结