首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >类的继承,文件读写

类的继承,文件读写

作者头像
达达前端
发布于 2019-07-03 04:37:28
发布于 2019-07-03 04:37:28
43900
代码可运行
举报
文章被收录于专栏:达达前端达达前端
运行总次数:0
代码可运行

标题图

父类

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package hh;
public class People {
 protected String name;
 protected int age=16;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public void getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
 //父类的print方法
 public void print(){
  System.out.println(this.name);
  System.out.println(this.age);
 }
}

子类

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package hh;
//继承使用extends关键字,前边是子类,后边是父类,类的继承只能有一个父类
public class Student extends People {
 private String no;
 //子类的成员变量和父类的成员变量同名时父类的成员变量被覆盖
 protected int age = 20;
 public String getNo() {
  return no;
 }
 public void setNo(String no){
  this.no = no;
 }
 //重载:在同一个类里多个方法名字相同,参数不一样
 //重写:在子类和父类之间多个方法名相同,参数相同,并且返回值也相同
 //调用父类同名的方法,前加上super
 public void print(){
  super.print();
  System.out.println(this.no);
 }
}

测试类

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package hh;
public class Test {
 public static void main(String[] args) {
  People dashu = new People();
  dashu.setName("dashu");
  dashu.setAge(16);
  //调用父类的print方法
  dashu.print();

  Student stu = new Student();
  stu.setName("hhhhh");
  stu.setAge(16);
  stu.setNo("1024");
  //子类对象的调用
  stu.print();
 }
}

设计思想:用随机文件流把文件正向读出并保存到了字符串中,将字符串倒序,显示到控制台。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package test2;

import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
public class text {
 public static void main(String[] args) {
  String filename = "c:/test/FileDemo.java";
  File f1=new File(filename);
  try{
   RandomAccessFile raf1=new RandomAccessFile(filename,"r");
   byte[] b = new byte[(int)f1.length()];
   StringBuffer sb = new StringBuffer();
   for(int i = 0;raf1.read(b)!=-1;i++){
     sb.append(new String(b,"utf-8"));
   }
   System.out.println(sb.reverse().toString());
   raf1.close();
 }catch(IOException e){
  e.printStackTrace();
 }
 }
}

图片

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class text1 {

    public static void main(String[] args) {
        FileReader fr;
        BufferedReader br;
        File file = new File("c:/test/FileDemo.java");
        String str;
        int n = 0;
        try {
            fr = new FileReader(file);
            br = new BufferedReader(fr);
            while((str = br.readLine()) != null){
                n++;
                System.out.println(n + "." + str);
            }
        }catch(FileNotFoundException e){
            e.printStackTrace();
        }catch(IOException e){
            e.printStackTrace();
        }
    }
}

图片

文件读写

目的

1 掌握文件读写的几种方法 2 FileOutputStream和FileInputStream类的使用。 3 基本数据类型之间的转换

实现文件读取后转换为大写后写入到目标文件中,其中src是指源文件,des是目标文件目录。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class FileDemo {

    //创建一个文件夹
    public static void createFolder(String path){
        File folder=new File(path);
        if(folder.exists()){
            System.out.println("文件夹已存在!");
        }else{
            //不存在时去创建
            folder.mkdir();
        }
    }
    //创建一个文件
    public static void createFile(String path,String filename){
        File file=new File(path,filename);
        //文件判断是否已存在
        if(file.exists()){
            System.out.println("文件已存在!");
            System.out.println(file.length());
        }else{
            try{
                file.createNewFile();
            }catch(IOException e){
                System.out.println("文件创建失败!");
            }
        }
    }
    //写文件
    public static void write(String path,String filename){
        try{
            String str="0123456789/nac";
            String Upstr = str.toUpperCase();//
            byte b[]=Upstr.getBytes();//
            FileOutputStream fos=new FileOutputStream(new File(path,filename));
            fos.write(b);
            fos.close();
        }catch(FileNotFoundException e){
            System.out.println("文件不存在");
        }catch(IOException e){
            System.out.println("写文件失败");
        }
    }
    //读文件
    public static void read(String path,String filename){
        try{
            int length=0;
            String str="";
        
            byte buffer[]=new byte[10];
            FileInputStream fis=new FileInputStream(new File(path,filename));
            
            while((length=fis.read(buffer, 0, buffer.length)) !=-1){
                str+=new String (buffer, 0, length);
            }
            System.out.println(str);//
            fis.close();
        }catch(FileNotFoundException e){
            System.out.println("文件不存在");
        }catch(IOException e){
            e.printStackTrace();
        }
    }
//
    public static void FileReaderCopy(String src,String des){
        try{
        FileReader fr=new FileReader(src);
        FileWriter fw=new FileWriter(des);
        char c[]=new char[1024];
        int len=0;
        
        while((len=fr.read(c, 0, c.length)) != -1){
            fw.write(c, 0, c.length);
        }
        fw.close();
        fr.close();
    } catch(FileNotFoundException e){
        System.out.println("文件不存在");
    }catch(IOException e){
        System.out.println("读写失败");
    }
    }
    //
    public static void BufferedReaderCopy(String src,String des){
        try{
            BufferedReader br=new BufferedReader(new FileReader(src));
            BufferedWriter bw=new BufferedWriter(new FileWriter(des));
            String str="";
            while((str=br.readLine()) != null){
                String Upstr = str.toUpperCase();//加入大写的变换
                bw.write(Upstr);//
                bw.newLine();
            }
            bw.close();
            br.close();
        } catch(FileNotFoundException e){
            System.out.println("文件存在");
        }catch(IOException e){
            System.out.println("读写失败");
        }
        }
    //复制
    public static void copy(String src,String des){
        try{
            FileInputStream fis=new FileInputStream(src);
            FileOutputStream fos=new FileOutputStream(des);
            int c;
            while((c=fis.read()) != -1){
                fos.write(c);
            }
            fos.close();
            fis.close();
        }catch(FileNotFoundException e){
            System.out.println("文件不存在");
        }catch(IOException e){
            System.out.println("读写失败");
        }
    }
    //复制文件
    public static void copy1(String src,String des){
        try{
            FileInputStream fis=new FileInputStream(src);
            FileOutputStream fos=new FileOutputStream(des);
            int c;
            byte buff[]=new byte[1024];
            while((c=fis.read(buff,0,buff.length)) != -1){
                fos.write(buff,0,c);
            }
            fos.close();
            fis.close();
        }catch(FileNotFoundException e){
            System.out.println("文件不存在");
        }catch(IOException e){
            System.out.println("读写失败");
        }
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        FileDemo.createFolder("c:/test");
        FileDemo.createFile("c:/test", "1.txt");
        FileDemo.write("c:/test", "1.txt");
        FileDemo.read("c:/test", "1.txt");
        FileDemo.read("c:/test", "FileDemo.java");
        FileDemo.BufferedReaderCopy("c:/test/FileDemo.java", "c:/test/FileDemo2.java");
        FileDemo.copy1("c:/test/1.mp3", "c:/test/2.mp3");
    }

}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.07.30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
第十六节:读文件,文件的创建,写文件,文件的读写以及鼠标键盘事件和图形绘制
用来获取文件本身的信息,如文件所在目录、文件长度、文件读写权限等,不涉及文件的读写操作。
达达前端
2019/07/03
6210
第十六节:读文件,文件的创建,写文件,文件的读写以及鼠标键盘事件和图形绘制
第十一节:讲述类的继承,数据库,文件的读写,图形绘制
大家好,我是 Vic,今天给大家带来第十一节:讲述类的继承,数据库,文件的读写,图形绘制的概述,希望你们喜欢
达达前端
2019/07/03
4770
第十一节:讲述类的继承,数据库,文件的读写,图形绘制
十五、IO流【黑马JavaSE笔记】(本文文中记录了个人学习感受)
finally:在异常处理时提供finally块来执行所有清除操作。比如说IO流中的释放资源
啵啵鱼
2022/11/23
5110
十五、IO流【黑马JavaSE笔记】(本文文中记录了个人学习感受)
第39节:Java当中的IO
流:在Java中输入和输出是通过流的类来实现的,Java提供了一套丰富的流类,可导入java.io,这样就可以完成输入和输出了,也同样可以实现网络操作等。
达达前端
2019/07/03
4270
第39节:Java当中的IO
第53节:Java当中的IO流(上)
标题图 Java当中的IO流 在Java中,字符串string可以用来操作文本数据内容,字符串缓冲区是什么呢?其实就是个容器,也是用来存储很多的数据类型的字符串,基本数据类型包装类的出现可以用来解决字
达达前端
2019/07/03
5750
第53节:Java当中的IO流(上)
大数据必学Java基础(七十):不要用字符流去操作非文本文件
.jpg、 .mp3 、 .mp4、.doc 、.ppt -- 建议使用字节流操作
Lansonli
2022/10/05
3760
大数据必学Java基础(七十):不要用字符流去操作非文本文件
第二十一天 IO-递归&字节流&字符流【悟空教程】
递归就是“在一个方法内可以再次调用自身”,如下,method方法又调用了method方法。
Java帮帮
2018/07/26
7970
第二十一天 IO-递归&字节流&字符流【悟空教程】
java-流处理
例如要写入整数10到文件中,字节流会把数字10的ASCII码写进去,而字符流是以字符1和0写入。
luxuantao
2021/02/24
3880
IO流你了解多少
🧑个人简介:大家好,我是 shark-Gao,一个想要与大家共同进步的男人😉😉
程序员Leo
2023/08/02
3390
IO流你了解多少
14:IO之字符字节流
字节流: InputStream    OutputStream  字节流:  FileInputStream FileOutputStream BufferedInputStream BufferedOutputStream 字符流: Writer Reader FileReader FileWriter BufferedReader BufferedWriter 第一  IO流概述 一、概述: IO流是来处理设备间的数据传输 1、特点: 1)流操作按照数据可分为字节流(处理所有的数据)和字符流(处理文
六月的雨
2018/05/14
8660
Java:输入输出流笔记
Java的对象序列化就是把对象写入到输出流中,用来存储或传输;反序列化就是从输入流中读取对象。
Breeze.
2022/06/08
5790
Java:输入输出流笔记
Java_IO流(精讲)包含练习题及答案
包含常用的所有属性与函数的示例,并且对【字符流】【字节流】分别做的【读写】操作示例。
红目香薰
2022/11/29
6090
Java_IO流(精讲)包含练习题及答案
关于什么是IO流
需要转换—转换流InputStreamReader、OutputStreamWriter
用户9399690
2022/01/20
9060
关于什么是IO流
Java IO
java中涉及到的io流基本都是从以上四个抽象基类派生出来的,其子类都是以其父类的名字做后缀。
万能青年
2019/09/05
5810
Java IO
Java学习笔记之File&递归&字节流
    对于File而言,其封装的并不是一个真正存在的文件,仅仅是一个路径而已,它可以是存在的,也可以是不存在的,将来是要通过具体的操作把这个路径的内容转换为具体存在的
Jetpropelledsnake21
2021/12/31
2710
Java学习笔记之File&递归&字节流
java中IO流详细解释?
BufferedReader的readLine()&BufferedWriter的newLine()方法
技术从心
2019/08/07
1.8K0
Java字节流和字符流详解
生活中,你肯定经历过这样的场景。当你编辑一个文本文件,忘记了ctrl+s ,可能文件就白白编辑了。当你电脑上插入一个U盘,可以把一个视频,拷贝到你的电脑硬盘里。那么数据都是在哪些设备上的呢?键盘、内存、硬盘、外接设备等等。 我们把这种数据的传输,可以看做是一种数据的流动,按照流动的方向,以内存为基准,分为输入input 和输出output ,即流向内存是输入流,流出内存的输出流。 Java中I/O操作主要是指使用java.io包下的内容,进行输入、输出操作。输入也叫做读取数据,输出也叫做作写出数据。
共饮一杯无
2022/11/28
1.4K0
Java字节流和字符流详解
Java学习笔记——IO流
File中的方法,仅涉及到如何创建、删除、重命名等等。只要涉及文件内容的,File是无能为力的,必须由io流来完成。
梦飞
2022/06/23
3280
Java—I/O流
当不同的介质之间有数据交互的时候,JAVA就使用流来实现。 数据源可以是文件,还可以是数据库,网络甚至是其他的程序
SakuraTears
2022/01/13
4570
十五:IO流_什么是io流
计算机只能识别二进制数据,早期由来是电信号。为了方便应用计算机,让它可以识别各个国家的文字。就将各个国家的文字用数字来表示,并一一对应,形成一张表。这就是编码表。
全栈程序员站长
2022/11/01
1.3K0
十五:IO流_什么是io流
相关推荐
第十六节:读文件,文件的创建,写文件,文件的读写以及鼠标键盘事件和图形绘制
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档