如何判断一个文件已经生成了?? 本帖最后由 hanyu1222 于 2010-07-09 16:19:02 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 for(int i=0;i<1;) { while(!file.exist()){ Runtime.getRuntime().exec("cmd /c " + anotherFile); i++; break; } } 只有一个文件 为什么不用ifelse呢 File file=new File("文件生成的路径");System.out.println(file.exists()); 只有一个文件且只判断是否存在,为什么需要用while呢?直接if(file。exists())不行吗? File file = new File("a.txt"); if(!file.exists()) { //create new file } 可能我没把问题说清楚啦我是要等那个文件生成之后再继续执行下去啦if else 的话if条件不成立就执行else啦,除非用递归但这样貌似和用while效果一样啊。 这样:String filePaht = "yourFilePath";File file = new File(filePaht );// 如果当前文件存在,或者成功创建。// 不需要调用 cmd 来创建路径。使用 file.createNewFile() 可以保证文件创建后,才继续逻辑if(file.exists() || file.createNewFile()){ // do sth} 我有个感觉,楼主的程序是不是进入死循环了,要不然你所说的“因为是调用cmd的,这样反复执行的话,可能比较耗内存,很容易当掉的”是从何而来呢》?检查Runtime.getRuntime().exec("cmd /c " + anotherFile);生成的文件,是不是和!file.exist()判断的文件是同一个名字,同一路径。 楼主这个问题 我曾经也考虑过 我们是用cmd调用一个bat文件,想当bat文件执行成功后再向下执行程序,因为java调用bat时不考虑,bat是否执行完毕,因此我们想当bat执行成功后,在指定的路径下生成一个txt文件,当java读到存在这个文件的时候再向下执行。 File f=new File(new File("d:\\bisu_bi\\etl\\bat"),"bat_status.txt"); // 检查文件是否存在while(!f.exists()){//当文件存在的时候,跳出循环 Thread.sleep(2); // 睡两秒}思路是这样的:指定好文件路径,用while进行死循环判断,当程序不存在是,进入循环,当文件存在就跳出循环程序向下执行 Java连接远程Mysql数据库失败 java模拟Telnet协议登到远程服务器? 关于递归的单步调试问题 不显示删除回复显示所有回复显示星级回复显示得分回复 谁能给我一个精简后的jre 能运行一般的小的AWT就行!谢谢! 呵呵,XP!!! 该如何存放路径? 思路求教,分不够再加 如何获得从命令行输入的数据? 如何在Jtable的单元格中显示图片? 请问那里有visual age最新版本是多少? JAVA 语言做APP程序的界面,用哪个集成开发环境比较多? JTable继承DefaultTableModel不能编辑数据
{
while(!file.exist()){
Runtime.getRuntime().exec("cmd /c " + anotherFile);
i++;
break;
} }
System.out.println(file.exists());
if(!file.exists()) {
//create new file
}
File file = new File(filePaht );
// 如果当前文件存在,或者成功创建。
// 不需要调用 cmd 来创建路径。使用 file.createNewFile() 可以保证文件创建后,才继续逻辑
if(file.exists() || file.createNewFile()){
// do sth
}
“因为是调用cmd的,这样反复执行的话,可能比较耗内存,很容易当掉的”
是从何而来呢》?
检查Runtime.getRuntime().exec("cmd /c " + anotherFile);生成的文件,是不是和!file.exist()判断的文件是同一个名字,同一路径。
Thread.sleep(2); // 睡两秒
}思路是这样的:指定好文件路径,用while进行死循环判断,当程序不存在是,进入循环,当文件存在就跳出循环程序向下执行