• Java IO流如何操作(创建,读取,删除,写入)文件呢?


    转自:

    Java IO流如何操作(创建,读取,删除,写入)文件呢?

    下文笔者将通过示例的方式讲述IO流操作文件的方法,如下所示:

    创建一个新文件

    import java.io.*;
    class TestClass{
        public static void main(String[] args) {
            File f=new File("D:\\test.txt");
            try{
                f.createNewFile();
            }catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    

    删除一个文件

    import java.io.*;
    class TestClass{
        public static void main(String[] args) {
            String fileName="D:"+File.separator+"test.txt";
            File f=new File(fileName);
            if(f.exists()){
                f.delete();
            }else{
                System.out.println("文件不存在");
            }
             
        }
    }
    

    IO流创建一个文件夹

    import java.io.*;
    class TestClass{
        public static void main(String[] args) {
            String fileName="D:"+File.separator+"test";
            File f=new File(fileName);
            f.mkdir();
        }
    }
    

    列出指定目录的全部文件(包括隐藏文件)

    import java.io.*;
    class TestClass{
        public static void main(String[] args) {
            String fileName="D:"+File.separator;
            File f=new File(fileName);
            File[] str=f.listFiles();
            for (int i = 0; i < str.length; i++) {
                System.out.println(str[i]);
            }
        }
    }
    

    使用RandomAccessFile写入文件

    import java.io.*;
    class TestClass{
        public static void main(String[] args) throws IOException {
            String fileName="D:"+File.separator+"test.txt";
            File f=new File(fileName);
            RandomAccessFile demo=new RandomAccessFile(f,"rw");
            demo.writeBytes("asdsad");
            demo.writeInt(12);
            demo.writeBoolean(true);
            demo.writeChar('A');
            demo.writeFloat(1.21f);
            demo.writeDouble(12.123);
            demo.close();  
        }
    }
    

    向文件中写入字符串

    import java.io.*;
    class TestClass{
        public static void main(String[] args) throws IOException {
            String fileName="D:"+File.separator+"test.txt";
            File f=new File(fileName);
            OutputStream out =new FileOutputStream(f);
            String str="java265.com";
            byte[] b=str.getBytes();
            out.write(b);
            out.close();
        }
    }
    

    向文件中追加新内容

    import java.io.*;
    class TestClass{
        public static void main(String[] args) throws IOException {
            String fileName="D:"+File.separator+"test.txt";
            File f=new File(fileName);
            OutputStream out =new FileOutputStream(f,true);
            String str="Java265.com"; 
            byte[] b=str.getBytes();
            for (int i = 0; i < b.length; i++) {
                out.write(b[i]);
            }
            out.close();
        }
    }
    

    读取文件内容

    import java.io.*;
    class TestClass{
        public static void main(String[] args) throws IOException {
            String fileName="D:"+File.separator+"test.txt";
            File f=new File(fileName);
            InputStream in=new FileInputStream(f);
            byte[] b=new byte[1024];
            int count =0;
            int temp=0;
            while((temp=in.read())!=(-1)){
                b[count++]=(byte)temp;
            }
            in.close();
            System.out.println(new String(b));
        }
    }
  • 相关阅读:
    【养成系】Linux常用命令
    Java.lang.Class类 getSupperclass()方法有什么功能呢?
    深拷贝和浅拷贝的主要区别
    Java的字符串String
    安全评估与安全评价:区分核心概念
    rabbitmq的confirm模式获取correlationData为null解决办法
    R语言计算时间序列数据的移动平均值(滚动平均值、例如5日均线、10日均线等):使用zoo包中的rollmean函数计算k个周期移动平均值
    Spring Cloud Gateway
    Redis 数据迁移篇之redis-shake工具使用手册
    putty连接虚拟机报错Access defined
  • 原文地址:https://blog.csdn.net/qq_25073223/article/details/126318756