海珠 2009-09-15 18:47
浏览 207
已采纳

IO流的问题

我最近学了流有关的概念 写了个程序但有些 方法实现不了!代码如下:
package com.C;
import java.io.*;
public class FileDemo
{
public static void main(String []args) throws IOException
{
File f=new File("f:\temp.txt");
FileDemo fil=new FileDemo();
fil.pri(f);

}
public void pri(File f) throws IOException
{
if (f==null)
return;
if (f.exists())
{
String type;
if(f.isDirectory())
type="目录";
else
type="标准文件";
System.out.println("文件类型: "+type);
System.out.println("文件绝对路径: "+f.getAbsolutePath());
System.out.println("文件上级目录: "+f.getParent());
System.out.println("文件长度: "+f.length());
return;
}
System.out.println(f.getName()+"不存在");
if(f.createNewFile())
{
String type;
if(f.isDirectory())
type="目录";
else
type="标准文件";
System.out.println("文件类型: "+type);
System.out.println("文件绝对路径: "+f.getAbsolutePath());
System.out.println("文件上级目录: "+f.getParent());
System.out.println("文件长度: "+f.length());
return;
}
if( f.renameTo(new File("f:\zhangli.txt")))

System.out.println("文件类型重命名成功!! ");

if( f.delete());

System.out.println("文件删除成功! ");

}
}

为何后面的重命名和删除方法不得实现啊

  • 写回答

2条回答 默认 最新

  • iteye_18964 2009-09-15 19:54
    关注

    楼主执行if(f.createNewFile())时创建文件后直接return.看看以下code.
    你重命名之后delete()不会被执行的
    [code="java"]
    import java.io.*;
    public class FileDemo {
    public static void main(String[] args) throws IOException {
    File f = new File("f:\temp.txt");
    FileDemo fil = new FileDemo();
    fil.pri(f);
    }
    public void pri(File f) throws IOException {
    if (f == null)
    return;
    if (f.exists()) {
    print(f);
    return;
    }
    System.out.println(f.getName() + "不存在");
    if (f.createNewFile()) {
    print(f);
    }
    if (f.renameTo(new File("f:\zhangli.txt")))
    System.out.println("文件类型重命名成功");
    }
    private static void print(File file){
    System.out.println("文件类型: " + (file.isDirectory()?"目录":"标准类型"));
    System.out.println("文件绝对路径: " + file.getAbsolutePath());
    System.out.println("文件上级目录: " + file.getParent());
    System.out.println("文件长度: " + file.length());
    }
    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名