`

键盘输入目录,将子目录和最后修改时间存入数据库

阅读更多

思路:

1,获取键盘中输入的值

2,根据输入的值,遍历出所有的子目录,将子目录封装成对象,并放入集合中

3. 从集合中取出对象,并存入到数据库

4,测试结果

 

/**

 *创建文件对象

 *@author Li Jia Xuan

 *@version 1.0

 *@since 2012-10-29

 *@time 下午03:32:34

 */

public class File1 {

  private int i=5;

  private String path;

  private String last_time;

 File1(int i, String path, String last_time) {

//uper();

this.i = i;

this.path = path;

this.last_time = last_time;

}

public int getI() {

return i;

}

public String getPath() {

return path;

}

public String getLast_time() {

return last_time;

 

}

//------------------------------------------------------------------------------------

/**
 *创建存入数据库的方法
 *@author Li Jia Xuan
 *@version 1.0
 *@since 2012-10-29
 *@time 下午04:45:52
 */
public class TestConn {
private static final String DRIVER_NAMR="oracle.jdbc.driver.OracleDriver"; 
private static final String URL="jdbc:oracle:thin:@192.168.1.254:1521:orcl"; 
private static final String USER="lijiaxuan"; 
private static final String PWD="123456";
public static void test(File1 f) {

Connection conn =null;
PreparedStatement ps=null;
try {
Class.forName(DRIVER_NAMR);
conn = DriverManager.getConnection(URL, USER, PWD);
ps = conn.prepareStatement("insert into file1 values(seq_file.nextval,?,?)");
//ps.setInt(1, f.getI());
ps.setString(1, f.getPath());
ps.setString(2, f.getLast_time());
int i = ps.executeUpdate();
if (i > 0) {
System.out.println("插入成功");
}
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(ps!=null){
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

}
}
//--------------------------------------------------------------------------------------
       1获取控制台的输入
 *     2根据输入得到所有路径名,和最后修改时间
 *     3.把数据封装到对象中
 *@author Li Jia Xuan
 *@version 1.0
 *@since 2012-10-29
 *@time 下午02:08:35
 */
public class DBFile {
    /**
    * 获取输入的数据
    * @return
    */
    public  String  getValue(){
    BufferedReader  br= new BufferedReader(new InputStreamReader(System.in));
    String str=null;
    try {
while((str=br.readLine())!=null){
//System.out.println(str);
System.out.println("读取完成");
return str;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
    }
    /**
    * 获取所有的路径和时间
    */
   
    static ArrayList<File1> al=new ArrayList<File1>();
public  ArrayList<File1> list(String path) {
if (path != null) {
File file = new File(path);
if (file != null) {
File[] file1 = file.listFiles();
if (file1 != null) {
for (File ff : file1) {
if (ff.isDirectory()) {
// long l=ff.lastModified();
// System.out.println(ff.getPath()+String.valueOf(l));
list(ff.getAbsolutePath());
} else {
// int i=0;
// i++;
long l = ff.lastModified();
Date d = new Date(l);
SimpleDateFormat simple = new SimpleDateFormat("yyyy-MM-dd' 'HH:mm:ss");
String str = simple.format(d);
File1 f=new File1(1,ff.getAbsoluteFile().toString(),str);
// System.out.println(f.getPath());
al.add(f);
System.out.println("存入集合完成");
// TestConn.test(f);
// return al;
}
}
}
}
}
//System.out.println("完成");
return al;
}
}
//--------------------------------------------------------------------------------------
/**
 *测试
 *@author Li Jia Xuan
 *@version 1.0
 *@since 2012-10-30
 *@time 上午10:25:40
 */
public class Test {
public static void main(String[] args) {
DBFile db=new DBFile();
TestConn t=new TestConn();
String path= db.getValue();
ArrayList<File1> al1=db.list(path);
for (File1 file1 : al1) {
//System.out.println(file1.getPath());
t.test(file1);
}
//两种插入方式遍历集合中元素的方式均可以
System.out.println(al1.size());
// Iterator<File1> it=al1.iterator();
// while(it.hasNext()){
// File1 f=it.next();
// test(f);
// }
}
}

分享到:
评论

相关推荐

    tipp10helper:简化TIPP10键盘布局的数据库生成

    3. **数据处理**:利用Python的库(如pandas或sqlite3)对收集的数据进行清洗、格式转换,并将它们存入数据库。 4. **用户界面**:可能提供一个简单的命令行接口或图形用户界面(GUI),让用户能够选择或配置键盘...

    C#程序开发范例宝典(第2版).part13

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part08

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part02

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#程序开发范例宝典(第2版).part12

    精选570个典型范例,全面覆盖实用和热点技术,涉及面广,实用性强源于实际项目开发,帮助读者短时间掌握更多实用技术,提高编程水平范例经过精心编排,重点、难点突出,易学易懂书后附录提供快速索引,即查、即学、...

    C#.net_经典编程例子400个

    89 2.8 TreeView控件应用 91 实例073 将数据库数据显示到树视图中 91 实例074 用TreeView控件制作导航界面 93 实例075 用TreeView控件遍历磁盘目录 94 实例076 TreeView控件在数据库中的...

    云南省计算机一级考试题.pdf

    - I/O设备:键盘和显示器是输入/输出设备,键盘输入,显示器输出。 - 子目录管理:同一磁盘的子目录可以重名,但不推荐,可能导致混淆。 - 文件删除:在Windows中,软盘删除的文件不能通过回收站恢复。 - 快捷...

    cmd操作命令和linux命令大全收集

    date /t 、 time /t 使用此参数即“DATE/T”、“TIME/T”将只显示当前日期和时间,而不必输入新日期和时间 set 指定环境变量名称=要指派给变量的字符 设置环境变量 set 显示当前所有的环境变量...

    计算机专业英语词汇.pdf

    存储文件和子目录的文件夹。例如:“List the contents of the directory”(列出目录的内容)。 17. from: 从。介词,用于指明来源。例如:“Copy files from the network drive”(从网络驱动器复制文件)。 18....

    使用scanf().zip

    `scanf()`是C语言中的输入函数,用于从标准输入(通常是键盘)读取数据。这个压缩包可能包含了某个教学或示例项目,可能是为了演示如何在实际代码中使用`scanf()`来获取用户输入。 描述中提到的“微博源代码:...

    大学计算机基础选择题题库.pdf

    14. 写保护状态操作:如果A盘处于写保护状态,可以查看目录树,但不能修改、删除或新建文件或文件夹。 15. 打包PowerPoint:在PowerPoint中,“打包”意味着将播放器和演示文稿一起压缩到同一张软盘或USB设备上,...

Global site tag (gtag.js) - Google Analytics