码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 计算机的基础知识


    目录

    一、计算机的文件

    1、计算机硬件设备

    2、常见的IO设备 

     3、硬盘——存储

    4、硬盘数据的读写问题

    5、文件的路径 

     二、使用java代码操作文件

    1、文件对象

     2、文件的常用方法

     3、文件的创建

    4、文件的删除 


    一、计算机的文件

    1、计算机硬件设备

    处理器(CPU),存储器(内存),输入设备(Input Device),输出设备(Output Device)

    CPU只和内存做数据交换

    2、常见的IO设备 

    显示器(O)、触屏显示器(IO)、鼠标(I)、键盘(I)、摄像头(I)、麦克风(I)、扬声器(O)、硬盘(IO)、网卡(IO)

     3、硬盘——存储

    4、硬盘数据的读写问题

    文件被以树结构进行管理,文件就会树上的节点

    文件可以分为:

           存储数据的文件——普通文件

           管理树形结构组织数据的文件——目录/文件夹

            这棵文件树是一个逻辑结构,而不是硬盘的逻辑结构

    树的节点可以分为:叶子节点 or 非叶子节点

            普通文件就是叶子节点

            目录文件可以是非叶子节点也可以是叶子节点(空目录)

    文件系统的操作

           文件移动操作:就是节点的移动

           文件复制操作:新建节点+内容复制

           目录移动操作:以某个节点为根的子树的移动

           目录的复制操作:以某个节点为根子树的复制

    5、文件的路径 

     关于文件的路径(path):根据一个规则,从文件树上唯一的确定一个位置,这个位置一定对应了某个节点,但是这个节点可以不存在

    ①绝对路径:从一棵树的根节点出发描述的路径

    ②相对路径:从当前所在的文件位置出发

    Windows使用"\"作为路径分隔符,Linux使用"/"作为路径分隔符,在java中,我们两种都可以使用,但是在使用"\"时需要转义("\\")

    路径中的两个特殊符号:

                "." 表示在当前的位置

                ".." 表示回到当前文件位置的上一级目录

     二、使用java代码操作文件

    1、文件对象

    File对象描述一个文件

    1. import java.io.File;
    2. public class FilePath {
    3. //1、绝对路径的方式创建
    4. //1.1 直接传入字符串的路径
    5. File f1=new File("D:\\桌面文件\\java课程\\文件操作\\hello.txt");
    6. //1.2 传入父路径+子路径
    7. File f2=new File("D:\\桌面文件\\java课程\\文件操作","hello.txt");
    8. //1.3 以File传入parent
    9. File parent=new File("D:\\桌面文件\\java课程\\文件操作");
    10. File f3=new File(parent,"hello.txt");
    11. }

     2、文件的常用方法

    文件的比较 

     3、文件的创建

     当这个文件已经存在时,再次运行这个代码就会创建失败,返回false

    4、文件的删除 

     删除非空目录

    先遍历,删除该目录下的所有子孙,让这个目录变成空目录,然后在删除该目录

    1. import java.io.File;
    2. import java.io.IOException;
    3. //删除非空目录
    4. public class deleteNonemptyDirectories {
    5. public static void main(String[] args) throws IOException {
    6. File f1= new File("D:\\桌面文件\\java课程\\文件操作");
    7. traversal(f1);
    8. }
    9. public static void traversal(File dir) throws IOException {
    10. //查看这个目录下的所有孩子(不是子孙)
    11. File[] f1=dir.listFiles();
    12. for (File file:f1) {
    13. //如果这个孩子也是目录就继续遍历
    14. if (file.isDirectory()){
    15. //打印当前目录
    16. System.out.println(file.getCanonicalFile());
    17. traversal(file);
    18. //此时已经到最底层文件或者是空目录了
    19. file.delete();
    20. }else{
    21. //得到标准的绝对路径,此时已经到最底层文件或者是空目录了
    22. System.out.println(file.getCanonicalFile());
    23. file.delete();
    24. }
    25. }
    26. }
    27. }

     三、相关代码

    https://gitee.com/ren-xiaoxiong/rocket_class_ds_webicon-default.png?t=M5H6https://gitee.com/ren-xiaoxiong/rocket_class_ds_web

  • 相关阅读:
    R语言拟合ARIMA模型并使用拟合模型进行预测推理:使用forecast函数计算ARIMA模型未来值(包含时间点、预测值、两个置信区间)
    Mock单测含义
    RH850P1X芯片学习笔记-Generic Timer Module -ATOM
    【java面试】Redis篇
    倒计时2天,“文化数字化战略新型基础设施暨文化艺术链生态建设发布会”启幕在即
    日志门面技术
    Spring Boot 部署在Windows
    C++拷贝、赋值、移动、析构、默认构造 什么时候会被默认生成delete
    在“百模大战”重生,搜索引擎又行了?
    TIDB集群部署
  • 原文地址:https://blog.csdn.net/m0_68989458/article/details/125516893
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号