首页 > 编程语言 >java io

java io

时间:2024-08-09 19:52:49浏览次数:12  
标签:java String io new import public

package com.io;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;

public class BufferedReaderDemo01 {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(
                new InputStreamReader(
                        new FileInputStream("./src/main/java/com/io/FISDemo1.java"),
                                StandardCharsets.UTF_8
                )
        );
        String line = null;
        while ((line = br.readLine()) != null){
            System.out.println(line);
        }
        br.close();
    }
}

package com.io;

import java.io.File;
import java.io.IOException;

public class CreateNewFileDemo {

    public static void main(String[] args) throws IOException {
        //在当前目录下新建一个文件:test.txt
        File file = new File("./test.txt");
        //boolean exists()判断当前File表示的位置是否已经实际存在该文件目录
        if(file.exists()){
            System.out.println("该文件已存在!");
        }else{
            file.createNewFile();//将File表示的文件创建出来
            System.out.println("文件已创建");
        }
    }
}

package com.io;

import java.io.File;

/**
 * 删除一个目录
 */
public class DeleteDirDemo {
    public static void main(String[] args) {
        File dir = new File("demo");

        if(dir.exists()){
            dir.delete();
            System.out.println("目录已删除");
        }else{
            System.out.println("目录不存在");
        }
    }
}

package com.io;

import java.io.File;

public class DeleteFileDemo {
    public static void main(String[] args) {
        File file = new File("test.txt");
        if(file.exists()){
            file.delete();
            System.out.println("文件已删除");
        }else {
            System.out.println("文件不存在");
        }
    }
}

package com.io;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileCopyDemo01 {

    public static void main(String[] args) throws IOException {
        FileInputStream fis =
                new FileInputStream("a.jpg");
        FileOutputStream fos =
                new FileOutputStream("b.jpg");

        int n = -1;
        while((n=fis.read())!=-1){
            fos.write(n);
        }

        fis.close();
        fos.close();
    }
}

package com.io;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileCopyDemo2 {

    public static void main(String[] args) throws IOException {
        //实现思路
        //1读取文件内容
        FileInputStream fis = new FileInputStream("a.jpg");

        FileOutputStream fos = new FileOutputStream("b.jpg");

        //读取数据(复制)
        //2.1定义数组用于临时存储读取到数据
        byte[] data = new byte[1024];//这里数组的大小是自定义
        //2.2循环读取数据
        int length = -1;
        while((length=fis.read(data))!=-1){
            fos.write(data,0,length);//读了多少写多少  ,0表示起始位置,length表示写入的字节数
        }
        //3.关闭流对象
        fis.close();
        fos.close();
    }

}

package com.io;

import java.io.*;

public class FileCopyDemo3 {
    public static void main(String[] args) throws IOException {
            //
        BufferedInputStream bis =
                new BufferedInputStream(
                        new FileInputStream("./a.jpg"));
        BufferedOutputStream bos =
                new BufferedOutputStream(
                        new FileOutputStream("./c.jpg")
                );
        //2.读写数据(拷贝
        byte[] data = new byte[16];
        int len;
        while ((len = bis.read(data))!= -1){
            bos.write(data,0,len);
        }

        bos.flush();//这里表示刷新缓冲区内容到文件
        //3.关闭流对象
        bis.close();
        bos.close();
    }
}

package com.io;

import java.io.File;

public class FileDemo {
    public static void main(String[] args) {
        File file = new File("./demo.txt");
        //获取名字
        String name = file.getName();
        System.out.println(name);
        //获取文件大小(单位是字节)
        long len = file.length();
        System.out.println(len+"字节");
        //是否可读可写
        boolean cr = file.canRead();
        boolean cw = file.canWrite();
        System.out.println("是否可读"+cr);
        System.out.println("是否可写"+cw);
        //是否隐藏
        boolean ih = file.isHidden();
        System.out.println("是否隐藏:"+ih);
    }
}

package com.io;

import java.io.FileInputStream;
import java.io.IOException;

public class FISDemo1 {

    public static void main(String[] args) throws IOException {
        //构建文件输入流对象
        FileInputStream fis = new FileInputStream("jsd/2406/fos.dat");
        int n = 0;
        while((n=fis.read())!=-1){
            System.out.println(n);
        }
        //3.关闭流对象(水龙头有打开是不是也会有关闭,否则浪费资源
        fis.close();//流对象关闭后会释放内存
    }

}

package com.io;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

public class FOSDemo01 {

    public static void main(String[] args) throws IOException {
        //  构建一个文件输出流对象
        //创建文件对象
        File file = new File("jsd/2406/fos.dat");
        //获取文件对象的目录结构
        File parent = file.getParentFile();// jsd/2406/
        System.out.println(parent);
        //假如目录不存在则创建目录mkdirs()
        if(!parent.exists()){//parent.exists()加入返回ture表示存在
            parent.mkdirs();//创建多层目录

        }

        FileOutputStream fos2 = new FileOutputStream(file);
        //向文件写入数据
        fos2.write(3);
        fos2.write(4);
        fos2.write(5);

        System.out.println("数据写入ok");
        //释放资源(关闭流对象)
        fos2.close();
    }
}

package com.io;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;

public class InputStreamReaderDemo01 {

    public static void main(String[] args) throws IOException {
        InputStreamReader isr
                = new InputStreamReader(
                        new FileInputStream("./osw.txt"),
                StandardCharsets.UTF_8
        );
        int data = 0;
        while( (data = isr.read())!=-1){
            System.out.println((char)data);
        }
        isr.close();
    }
}

package com.io;

import java.io.File;

/**
 * 访问一个目录中的所有子项
 */
public class ListFileDemo1 {
    public static void main(String[] args) {
        //获取当前目录中的所有子项
        File dir = new File(".");

        /**
         * boolean isFile()
         * 判断当前File表示的是否为一个文件
         * boolean isDirectory()
         * 判断当前File表示的是否一个目录
         */
        if(dir.isDirectory()){
            File[] subs = dir.listFiles();
            System.out.println("当前目录包含"+subs.length+"个子项");
            for(int i = 0;i< subs.length;i++){
                File sub = subs[i];
                System.out.println(sub.getName());
            }
        }

    }
}

package com.io;

import java.io.File;

public class ListFilesDemo2 {

    public static void main(String[] args) {
        File dir = new File(".");
        if(dir.isDirectory()){
            File[] subs = dir.listFiles(f->f.getName().endsWith(".txt"));

            for(File sub:subs){
                System.out.println(sub.getName());
            }
        }
    }
}

package com.io;

import java.io.Serializable;

public class Message implements Serializable {
    private static final long serialVersionUID = 7613180213416277986L;

    private Integer id;

    private transient String title;

    private String content;

    public Message(){}

    public Message(Integer id,String title,String content){
        this.id= id;
        this.title=title;
        this.content=content;
    }
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    //alt+insert
    @Override
    public String toString() {
        return "Message{" +
                "id=" + id +
                ", title='" + title + '\'' +
                ", content='" + content + '\'' +
                '}';
    }
}

package com.io;

import java.io.File;

public class MkDirDemo {
    public static void main(String[] args) {
        File dir = new File("demo");

        if(dir.exists()){
            System.out.println("该目录已存在");
        }else{
            dir.mkdirs();//     创建目录时会将路径上所有不存在的目录一同创建
            System.out.println("目录已创建");

        }
    }
}

package com.io;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

public class ObjectInputStreamDemo02 {
    public static void main(String[] args) throws IOException,ClassNotFoundException {
        ObjectInputStream ois =
                new ObjectInputStream(
                        new FileInputStream("message.txt")
                );
        Message msg = (Message)ois.readObject();
        System.out.println(msg);
        ois.close();
    }
}

package com.io;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class ObjectOutputStreamDemo01  {
    public static void main(String[] args) throws IOException {
        Message m1 = new Message(1,"传奇老师病了","做了一个小手术");
        ObjectOutputStream oos =
                new ObjectOutputStream(
                        new FileOutputStream("message.txt")
                );
        oos.writeObject(m1);
        System.out.println("序列化OK");
        oos.close();
    }
}

package com.io;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.nio.charset.StandardCharsets;

public class OutputStreamWriteDemo01 {
    public static void main(String[] args) throws IOException {
        OutputStreamWriter osw =
                new OutputStreamWriter(
                        new FileOutputStream("./osw.txt"),
                        StandardCharsets.UTF_8
                );

        //2.写数据
        osw.write("你好");
        osw.write("子干老师 ");
        System.out.println("数据写出完毕");
        osw.close();
    }
}

package com.io;

import java.io.FileNotFoundException;
import java.io.PrintWriter;

public class PrintWriteDemo01 {

    public static void main(String[] args) throws FileNotFoundException {

        PrintWriter pw = new PrintWriter("./pw.txt");

        pw.println("hello");
        pw.println("world");
        pw.println("Java");
        pw.close();
    }
}

package com.io;

import java.io.*;

public class PrintWriteDemo2 {
    public static void main(String[] args)throws FileNotFoundException {
        PrintWriter printWriter = new PrintWriter(
                new BufferedWriter(
                        new OutputStreamWriter(
                                new FileOutputStream("./pw.txt",true)
                        )
                ),true
        );
        printWriter.println("hello");
        printWriter.println("Java");

        printWriter.close();
    }
}

package com.io;

import java.io.FileInputStream;
import java.io.IOException;

public class ReadStringDemo01 {

    public static void main(String[] args) throws IOException {

        FileInputStream fis = new FileInputStream("./f1.txt");


        //available获取流中有效字节数
        byte[] data = new byte[fis.available()];
        int len = fis.read(data);

        String str = new String(data,0,len);
        System.out.println(str);
        fis.close();
    }
}
package com.io;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Scanner;

public class SimpleNoteDemo1 {

    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        PrintWriter pw = new PrintWriter(
                new FileOutputStream("mynote.txt",true),
                true
        );

        while(true){
            System.out.println("请输入要存储的数据");
            String line = sc.nextLine();
            if("exit".equalsIgnoreCase(line)){
                break;
            }
            pw.println(line);
        }
        sc.close();
        pw.close();
    }

}

package com.io;

import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.StandardCharsets;

public class WriteStringDemo01 {

    public static void main(String[] args) throws IOException {
        String str = "我爱Java";
        //构建文件输出流对象
        FileOutputStream fos =  new FileOutputStream("./f1.txt");
        //写字符数据
        byte[] data = str.getBytes(StandardCharsets.UTF_8);
        fos.write(data);
        str="Hello Tedu";
        fos.write(str.getBytes(StandardCharsets.UTF_8));
        //释放资源
        fos.close();
    }
}

标签:java,String,io,new,import,public
From: https://blog.csdn.net/m0_68935893/article/details/141070098

相关文章

  • java集合
    packagecom.jihe;importjava.util.ArrayList;publicclassArrayListDemo1{publicstaticvoidmain(String[]args){//创建一个ArrayList实例ArrayList<String>fruits=newArrayList<>();//添加元素fruits.add(&quo......
  • 用了两个月苹果iOS 18后 这是我最满意的几个地方
    自从六月的苹果全球开发者大会(WWDC)上发布了首个开发者版本以来,我便在我的iPhone15ProMax上开始试用iOS18。笔者发现,iOS18包含了许多引人注目的新特性。对于外界来说,iOS18目前可能看起来还不算完全成熟的产品,因为一些最令人期待的新功能尚未正式亮相。深色图标多年来......
  • Java毕业设计-基于ssm框架开发的车辆管理系统-毕业论文(附毕设源代码)
    文章目录前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求/流程分析3、系统功能结构三、系统实现展示1、个人中心2、员工管理3、用户管理4、基础数据管理5、车辆管理6、保养登记管理7、事故登记管理8、维修登记管理9、违章登记管理四、毕设内容和......
  • 【IO】IPC通信机制函数(消息队列,共享内存,信号量集函数整理汇总)
            整理了一下IPC通信的函数,包括消息队列,共享内存,信号量集;信号量集的使用是在共享内存的基础上使用,函数太多啦,慢慢学吧cc,争取全部记住        其中在使用有关信号量集的函数的时候,进行简单的封装函数功能之后,再进行使用,会更加方便,在文章最后对信号量集的......
  • Java 入门练习:21 - 25
    JAVA21补全构造方法描述有父类Base,内部定义了x、y属性。有子类Sub,继承自父类Base。子类新增了一个z属性,并且定义了calculate方法,在此方法内计算了父类和子类中x、y、z属性三者的乘积。请补全子类构造方法的初始化逻辑,使得该计算逻辑能够正确执行。输入描述......
  • Java 入门练习:26 - 30
    JAVA26实现接口描述已知接口Comparator,内部定义了max函数,用于返回两个整数中的最大值。请定义该接口的实现类,使得main方法中的比较逻辑可以正确执行,要求实现类的名称为ComparatorImpl。输入描述两个整数输出描述两个整数中的最大值示例1输入:13输出:3解......
  • Java 入门练习:16 - 20
    JAVA16数组遍历描述将用户输入的六个数字填入数组并找出数组中最大值和最小值输入描述随机输入的6个整数输出描述输出数组中的最大值,最小值(最大值最小值之间用空格隔开。若有多个最大值或最小值,输出一次即可,如样例2所示)示例1输入:135246输出:61示例2......
  • Java中数组算法的学习
    数组的算法目录数组的算法概述冒泡排序选择排序排序算法库StreamAPI概述简单排序:冒泡排序、选择排序、插入排序高级排序:快速排序、归并排序、希尔排序相关算法知识:划分、递归、二分查找冒泡排序原理:从第一个数据开始,与第二个数据相比较,如果第二个数据小于第一个数据,......
  • Java基础——注解1——注解的定义与使用
    ......
  • java6
    我学习了常见API知识java.lang.Math提供数学常量和方法,如基本的数学运算(加、减、乘、除)、三角函数、对数、幂运算等。常用方法:Math.abs(x):返回x的绝对值。Math.max(a,b):返回a和b中的较大值。Math.min(a,b):返回a和b中的较小值。Math.sqrt(x):返回x的平方根。Math.pow(a,b......