文件以及相应类型题

本文介绍了文件的分类,包括文本文件(如word, txt, excle, pdf)和二进制文件(如mp3, mp4, avi, jpg, png)。详细阐述了文件的打开、写入、保存和关闭操作,特别是open()函数的使用,包括不同的访问模式(如r, w, a, rb, wb等)。此外,还讲解了读取(read, readline, readlines)和写入(write)文件的方法,以及如何复制和修改文件。" 123554365,8232762,RocketMQ消息发送详解:同步、异步、顺序、延时与事务,"['Java', 'RocketMQ', '消息队列']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文件分为文本文件和二进制文件。
文本文件:word txt excle pdf 等
二进制文件:mp3 mp4 avi jpg png等

文件的使用
1.打开文件
2.写入数据,输入内容
3.保存操作
4.关闭文件

打开文件
open():
这个函数可以打开一个已经存在的文件或创建一个新的文件。
格式:
open(“文件名”,访问模式,encoding=‘utf-8’)
如果文件内容中有中文,使用encoding
open有返回值

f=open("a.txt",encoding='utf-8')

访问模式:
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
w打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。wb以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
r+打开一个文件用于读写。文件指针将会放在文件的开头。
w+打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
wb+以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

关闭文件:
通过open的返回对象来进行操作

f.close()

读取文件:read() readline() readlines()
read():
如果read()这个函数没有指定参数,则返回文件中的所有内容。如果指定了参数,从文件中读取数据的长度(单位:字节)

readline():
读取一行数据,没执行一行,读取一行

readlines():
执行结果返回文章所有的内容,并且以列表的形式返回。

文件的写入write:
a+ : 以追加的形式写入
w+ : 以刷新的形式写入

从一个文件’a.txt’复制到另一个文件’b.txt’:

f=open("a.txt",encoding='utf-8')
#打开a文件
fd=open("b.txt",'a+',encoding='utf-8')
#打开b文件
ret1=f.read()
#读取a文件内容
fd.write(ret1)
#将读取的内容写入到b文件中
f.close()
#关闭a文件
fd.close()
#关闭b文件

mp3复制并修改

#打开旧文件
old=open('liangliang.mp3','rb')
print(old)
#打开新文件
new=open('凉凉.mp3','wb')
print(new)
#读取旧文件里面所有的内容,以列表的形式返回
list_obj=old.readlines()
print(list_obj)

#将读取的旧文件里面的内容,写入到新文件,
# 因为readlines是按照列表的形式返回,
# 所以采用遍历列表的形式写入
for obj in list_obj:
    new.write(obj)

#关闭文件
old.close()
new.write()
### 关于 Linux 文件系统的常见面试 以下是针对 Linux 文件系统的一些经典面试目及其解答: #### 1. **什么是 Linux 文件系统?** Linux 文件系统是一种用于存储和检索数据的方法。它通过树形结构来组织文件和目录,根目录 `/` 是整个文件系统的起点[^3]。 #### 2. **常见的 Linux 文件系统有哪些?** 常用的 Linux 文件系统包括 ext2、ext3、ext4、XFS 和 Btrfs 等。其中,ext4 是目前最广泛使用的文件系统之一,因为它提供了更高的性能、更大的磁盘容量支持以及更可靠的日志功能[^1]。 #### 3. **如何挂载一个的分区到文件系统中?** 可以使用 `mount` 命令将分区挂载到指定的挂载点上。例如: ```bash sudo mount /dev/sdb1 /mnt/new_partition ``` 如果希望开机自动挂载,则需要编辑 `/etc/fstab` 文件并添加相应的条目。 #### 4. **解释一下 inode 的概念及其作用是什么?** inode(索引节点)是文件系统中的一个重要组成部分,用来保存有文件的信息,比如权限、大小、创建时间等元数据。每个文件都有唯一的 inode 编号。当访问文件时,实际上是在读取其对应的 inode 数据。 #### 5. **怎样查看当前系统中已挂载的所有文件系统?** 可以通过运行以下命令获取所有已挂载文件系统的列表: ```bash df -hT ``` 此命令会显示每种类型文件系统及其可用空间情况[^4]。 #### 6. **在 Linux 中,“硬链接”与“软链接”的区别在哪里?** - 软链接类似于快捷方式,指向另一个文件或目录;即使源文件被删除,只要目标存在就可以继续工作。 - 硬链接则是直接关联到底层的数据块 (inodes),因此只有当最后一个引用该数据块的对象消失之后才会真正释放资源。 #### 7. **为什么说 EXT4 比起之前的版本有改进之处呢?** EXT4 提供了许多增强特性, 如延迟分配(Deferred Allocation), 多块分配(Multi-block Allocator) 及快速 fsck(Fast Fsck), 这些都极大地提高了效率和稳定性. --- ### 示例代码片段展示如何操作文件系统: 下面给出一段简单的脚本例子演示如何检查磁盘状态: ```bash #!/bin/bash echo "Checking disk usage..." du -sh ~/* | sort -hr echo "" echo "Listing mounted filesystems:" df -H --output=source,fstype,size,used,avail,pcent,target ``` 上述脚本首先打印用户的家目录下各子项占用的空间概况;接着列出所有的已安装卷详情, 包括它们各自的类型、尺寸以及其他统计信息.[^1] ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值